AdsPower支持本地Local API的功能,帮助用户通过程序化的方式来读写账号配置信息、启动和关闭浏览器、查询账号等基础API功能,还可以配合Selenium和Puppeteer等自动化框架来实现浏览器操作的自动化。
Path: /status
Method: GET
接口描述:用于检查API接口的可用性
//检查可用
{
"code":0,
"msg":"success"
}
Path: /api/v1/browser/start
Method: GET
接口描述:用于启动账号对应的浏览器,需要指定账号ID,启动成功后可以获取浏览器debug接口用于执行selenium和puppeteer自动化。 Selenium需要使用到对应内核版本匹配的Webdriver。需更新到应用版本3.4.1以上,启动浏览器后可在返回值中拿到对应的Webdriver的路径
Query 非必需参数可以不传递
参数名称 | 必需 | 默认值 | 示例 | 说明 | 备注 |
---|---|---|---|---|---|
user_id | 是 | - | h1yynkm | 通过账号ID启动,账号导入成功后生成的唯一ID | |
serial_number | 否 | - | 123 | 通过序号启动,如果已传递账号ID则优先用账号ID | |
open_tabs | 否 | 0 | 1 | 是否打开平台和历史页面,0:打开(默认),1:不打开 | 需升级到V2.4.2.9及以上版本 |
ip_tab | 否 | 1 | 0 | 是否打开ip检测页,0:不打开,1:打开(默认) | 需升级到V2.5.7.9及以上版本 |
launch_args | 否 | - | ["--window-position=400,0","--blink-settings=imagesEnabled=false", "--disable-notifications"] | 启动参数,例:--blink-settings=imagesEnabled=false: 禁止图片加载 --disable-notifications: 禁用通知 | 需升级到V2.4.6.7及以上版本 |
headless | 否 | 0 | 1 | 是否启动headless浏览器 0:否(默认)1:是 | 需升级到V2.4.6.7及以上版本 |
disable_password_filling | 否 | 0 | 1 | 是否禁用填充账密功能 0:否(默认)1:是 | 需升级到V2.4.6.7及以上版本 |
clear_cache_after_closing | 否 | 0 | 1 | 关闭浏览器后是否清除缓存 0:否(默认)1:是 | 需升级到V2.4.7.6及以上版本。若磁盘空间不足时,建议将该参数设置为1 |
enable_password_saving | 否 | 0 | 1 | 是否允许保存密码 0:否(默认)1:是 | 需升级到V2.4.8.7及以上版本 |
//执行成功
{
"code":0,
"data":{
"ws":{
"selenium":"127.0.0.1:xxxx", //浏览器debug接口,可用于selenium自动化
"puppeteer":"ws://127.0.0.1:xxxx/devtools/browser/xxxxxx" //浏览器debug接口,可用于puppeteer自动化
},
"debug_port": "xxxx", // debug端口
"webdriver": "C:\\xxxx\\chromedriver.exe" // webdriver路径
},
"msg":"success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/browser/stop
Method: GET
接口描述:用于关闭账号对应的浏览器,需要指定账号ID
Query 非必需参数可以不传递
参数名称 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|
user_id | 是 | - | h1yynkm | 账号ID,账号导入成功后生成的唯一ID |
serial_number | 否 | - | 123 | 通过序号关闭,如果已传递账号ID则优先用账号ID |
//执行成功
{
"code":0,
"data":{},
"msg":"success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/browser/active
Method: GET
接口描述:用于账号浏览器的启动状态,需要指定账号ID
Query 非必需参数可以不传递
参数名称 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|
user_id | 是 | - | h1yynkm | 账号ID,账号导入成功后生成的唯一ID |
serial_number | 否 | - | 123 | 通过序号检查,如果已传递账号ID则优先用账号ID |
//执行成功
{
"code":0,
"data":{
"status": "Active", // 浏览器已打开运行中 "Active" ,未打开则是 "Inactive"
"ws":{
"selenium":"127.0.0.1:xxxx", //浏览器debug接口,可用于selenium自动化
"puppeteer":"ws://127.0.0.1:xxxx/devtools/browser/xxxxxx" //浏览器debug接口,可用于puppeteer自动化
}
},
"msg":"success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/group/create
Method: POST
接口描述:添加账号的分组,用于创建账号时将账号分组,名称不能重复,创建成功后将返回group_id分组ID,分组ID为0是系统创建的默认分组
Body 非必需参数可以不传递,传参格式为JSON
参数名称 | 类型 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|---|
group_name | text | 是 | - | group1 | 添加分组的名称,名称不能重复 |
//执行成功
{
"code": 0,
"data": {
"group_id":"xxxxxxx" //分组添加成功之后的分组ID
"group_name":"group1" //分组名称
}
"msg": "Success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/group/update
Method: POST
接口描述:修改分组信息,可以修改分组名称,名称不能重复。需升级到v2.5.6.2以上
Body 非必需参数可以不传递,传参格式为JSON
参数名称 | 类型 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|---|
group_id | text | 是 | - | 123 | 需要修改的分组ID |
group_name | text | 是 | - | group2 | 修改后的分组名称,名称不能重复 |
//执行成功
{
"code": 0,
"data": {
}
"msg": "Success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/group/list
Method: GET
接口描述:查询分组信息,分组信息包括分组ID和分组名称,其中分组ID用于添加账号时给账号分组,分组ID为0是系统创建的默认分组
Query 非必需参数可以不传递
参数名称 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|
group_name | 否 | - | group1 | 指定分组名称查询分组,默认空查所有分组 |
page | 否 | 1 | 1 | 页码默认1第一页 |
page_size | 否 | 1 | 10 | 每页条数默认1条,最大2000 |
//执行成功
{
"code": 0,
"data": {
"list": [
{
"group_id": "100", //分组ID,添加账号时需要
"group_name": "group1" //分组名称
},
{
"group_id": "101",
"group_name": "group2"
}
],
"page": 1,
"page_size": 10
},
"msg": "Success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/user/create
Method: POST
接口描述:添加账号,支持配置平台账密和Cookie,代理ID和代理信息,指纹信息等等,添加成功后返回账号ID
Body 非必需参数可以不传递,传参格式为JSON
参数名称 | 类型 | 必需 | 默认值 | 示例 | 说明 | 备注 |
---|---|---|---|---|---|---|
name | text | 否 | - | user A | 对该账号的命名,限制100字,方便记忆管理 | |
domain_name | text | 否 | - | facebook.com | 账号平台的域名facebook.com, amazon.com...会在打开浏览器时默认访问 | |
open_urls | list | 否 | - | ["http://www.baidu.com","https://www.google.com"] | 浏览器打开时访问的其他url地址,不填则默认只打开domain_name的地址 | |
repeat_config | list | 否 | - | [2,3] | 账号去重,默认允许重复,支持 0允许重复; 2根据账密去重; 3根据cookie去重; 4根据c_user去重(c_user是FaceBook专有标记); | |
username | text | 否 | - | myusername | 账号密码或者Cookie至少填一个;账号允许重复则都可不填 | |
password | text | 否 | - | 123456 | 账号密码或者Cookie至少填一个;账号允许重复则都可不填 | |
cookie | text | 否 | - | [ { "domain": ".baidu.com", "expirationDate": , "name":"path": "/","sameSite": "unspecified", "secure":true, "value": "", "id": 1 } ] | 账号密码或者Cookie至少填一个;账号允许重复则都可不填;支持JSON和Netscape格式 | |
ignore_cookie_error | text | 否 | 0 | 1 | 0:校验cookie失败时,直接返回cookie格式不正确 1:校验cookie失败时,过滤掉格式错误的数据,保留正确格式的cookie 仅支持Netscape格式 | 需升级到V2.4.6.6及以上版本 |
group_id | text | 是 | 100 | 添加到对应分组的ID,未分配分组则可以传0 | ||
ip | text | 否 | - | xxx.xxx.xxx.xxx | 账号登录使用的代理IP,代理软件为lumauto、oxylabs填写 | |
country | text | 否 | - | us | 账号所属的国家/地区,lumauto、oxylabs如果没有IP则需要填写国家 | |
region | text | 否 | - | xx | 账号登录的州/省,可不填 | |
city | text | 否 | - | xx | 账号登录的城市,可不填 | |
remark | text | 否 | - | 这是一条说明 | 账号说明信息 | |
user_proxy_config | userProxyConfig | 和proxyid二选一必填 | - | {"proxy_type":"http","proxy_host":"123.0.0.1", "proxy_port":"12","proxy_user":"12", "proxy_password":"12","proxy_soft":"luminati"} | 账号代理配置,具体查看参数对象userProxyConfig | |
proxyid | text | 和user_proxy_config二选一必填 | - | xxx | 代理账号id | |
fingerprint_config | fingerprintConfig | 是 | - | {"automatic_timezone": "1","language": ["en-US","en"],"flash": "block","fonts": ["all"],"webrtc": "disabled", "ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36"} | 账号指纹配置,具体查看参数对象fingerprintConfig |
//执行成功
{
"code": 0,
"data": {
"id":"xxxxxxx" //账号添加成功之后的唯一ID
}
"msg": "Success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/user/update
Method: POST
接口描述:修改账号,支持更新账密和Cookie,代理信息,指纹信息等等
Body 非必需参数可以不传递,传参格式为JSON
参数名称 | 类型 | 必需 | 默认值 | 示例 | 说明 | 备注 |
---|---|---|---|---|---|---|
user_id | text | 是 | - | xxxxxxx | 需要修改的账号的ID | |
name | text | 否 | - | user A | 对该账号的命名,限制100字,方便记忆管理 | |
domain_name | text | 否 | - | facebook.com | 账号平台的域名facebook.com, amazon.com...会在打开浏览器时默认访问 | |
open_urls | list | 否 | - | ["http://www.baidu.com","https://www.google.com"] | 浏览器打开时访问的其他url地址,不填则默认只打开domain_name的地址 | |
username | text | 否 | - | myusername | 账号密码或者Cookie至少填一个;账号允许重复则都可不填 | |
password | text | 否 | - | 123456 | 账号密码或者Cookie至少填一个;账号允许重复则都可不填 | |
cookie | text | 否 | - | [ { "domain": ".baidu.com", "expirationDate": , "name":"path": "/","sameSite": "unspecified", "secure":true, "value": "", "id": 1 } ] | 账号密码或者Cookie至少填一个;账号允许重复则都可不填;支持JSON和Netscape格式 | |
ignore_cookie_error | text | 否 | 0 | 1 | 0:校验cookie失败时,直接返回cookie格式不正确 1:校验cookie失败时,过滤掉格式错误的数据,保留正确格式的cookie 仅支持Netscape格式 | 需升级到V2.4.6.6及以上版本 |
ip | text | 否 | - | xxx.xxx.xxx.xxx | 账号登录使用的代理IP,代理软件为lumauto、oxylabs填写 | |
country | text | 否 | - | us | 账号所属的国家/地区,lumauto、oxylabs如果没有IP则需要填写国家 | |
region | text | 否 | - | xx | 账号登录的州/省,可不填 | |
city | text | 否 | - | xx | 账号登录的城市,可不填 | |
remark | text | 否 | - | 这是一条说明 | 账号说明信息 | |
user_proxy_config | userProxyConfig | 否 | - | {"proxy_type":"http","proxy_host":"123.0.0.1", "proxy_port":"12","proxy_user":"12", "proxy_password":"12","proxy_soft":"luminati"} | 账号代理配置,具体查看参数对象userProxyConfig | |
proxyid | text | 否 | - | xxx | 代理账号id | |
fingerprint_config | fingerprintConfig | 否 | - | {"automatic_timezone": "1","language": ["en-US","en"],"flash": "block","fonts": ["all"],"webrtc": "disabled", "ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36"} | 账号指纹配置,具体查看参数对象fingerprintConfig |
//执行成功
{
"code": 0,
"data": {
}
"msg": "Success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/user/list
Method: GET
接口描述:查询已添加账号的信息,代理信息和代理ID
Query 非必需参数可以不传递
参数名称 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|
group_id | 否 | - | 1001 | 指定分组ID查询账号,默认不传递则查询所有分组的账号 |
user_id | 否 | - | xxxxxxx | 指定账号ID查询 |
serial_number | 否 | - | 123 | 指定序号查询 |
page | 否 | 1 | 1 | 页码,默认1,数量多需要翻页时用 |
page_size | 否 | 1 | 50 | 每页大小,默认每页1 ,最大100 |
//执行成功
{
"code": 0,
"data": {
"list": [
{
"serial_number": "1",
"user_id": "XXX",
"name": "XXX",
"group_id": "1",
"group_name": "XX",
"domain_name": "facebook.com",
"username": "username",
"remark": "remark",
"created_time": "1612520997", // 时间戳
"ip": "13.251.172.174",
"ip_country": "sg",
"password": "",
"last_open_time": "1621333030" // 最近一次打开时间(时间戳)
}],
"page": 1,
"page_size": 50
},
"msg": "Success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/user/delete
Method: POST
接口描述:删除不需要的账号,支持批量删除,一次删除的数量不能超过100个
Body 非必需参数可以不传递,传参格式为JSON
参数名称 | 类型 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|---|
user_ids | list | 是 | - | ["xxx"] ["xxx","yyy","zzz"] | 需要删除的账号ID,数组格式 |
//执行成功
{
"code":0,
"data":{},
"msg":"success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/user/regroup
Method: POST
接口描述:用于将账号重新分组,通过ID将账号分到对应的组
Body 非必需参数可以不传递,传参格式为JSON
参数名称 | 类型 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|---|
user_ids | list | 是 | - | ["xxx"] ["xxx","yyy","zzz"] | 需要分组的账号ID,数组格式 |
group_id | text | 是 | - | 123 | 对应的分组ID |
//执行成功
{
"code":0,
"data":{},
"msg":"success"
}
//执行失败
{
"code":-1,
"data":{},
"msg":"failed"
}
Path: /api/v1/user/delete-cache
Method: POST
接口描述:用于清除所有打开浏览器产生的本地缓存。为了账号安全,请确保在该设备中没有打开状态的浏览器下使用该接口。需更新到V2.4.7.4。若磁盘空间不足,可使用该接口清除账号缓存释放空间
注意事项:该接口会删除所有本地账号缓存数据,请谨慎使用。如果想对指定的账号在打开后进行缓存删除,可使用启动浏览器接口中的"clear_cache_after_closing"。
//执行成功
{
"code":0,
"msg":"success"
}
//若当前用户存在打开中的浏览器,执行失败
{
"code":-1,
"msg":"There are currently open browsers, please close them before deleting the cache"
}
user_proxy_config对象是账号代理配置的参数信息,AdsPower支持市面上常用的代理软件和协议。
属性名称 | 类型 | 必需 | 默认值 | 示例 | 说明 |
---|---|---|---|---|---|
proxy_soft | text | 是 | - | luminati | 目前支持的代理有luminati,lumauto,oxylabsauto,ssh,other,no_proxy |
proxy_type | text | 否 | - | socks5 | 代理的类型,目前支持的类型有http,https,socks5;no_proxy可不传 |
proxy_host | text | 否 | - | pr.oxylabs.io | 代理服务器的地址,可以填域名或者IP;no_proxy可不传 |
proxy_port | text | 否 | - | 123 | 代理服务器的端口号;no_proxy可不传 |
proxy_user | text | 否 | - | abc | 代理需要登录时的账号 |
proxy_password | text | 否 | - | xyz | 代理需要登录时的密码 |
proxy_url | text | 否 | - | http://www.xxx.com/ | 该URL用于移动代理,仅支持http/https/socks5的代理。 1、通过该链接,您可以通过手动操作去改变代理的IP地址。 2、多个账号使用同个代理账号时,刷新IP会改变同个代理账号的IP地址。 |
user_proxy_config需要传入对应的JSON对象,示例:
fingerprint_config对象是账号浏览器指纹配置的参数信息,支持多种浏览器指纹配置是AdsPower的产品特性之一。
属性名称 | 类型 | 必需 | 默认值 | 示例 | 说明 | 备注 |
---|---|---|---|---|---|---|
automatic_timezone | text | 否 | 1 | 1 | 1 基于IP自动生成对应的时区(默认);0 指定时区 | |
timezone | text | 否 | - | America/Yellowknife | 指定时区,默认空字符串""代表本地时区 | |
webrtc | text | 否 | disabled | disabled | Chrome即时通信组件,支持: proxy 替换 ,使用代理IP覆盖真实IP,代理场景使用 local 真实 ,网站会获取真实IP disabled 禁用(默认),网站会拿不到IP | |
location | text | 否 | ask | ask | 网站请求获取您当前地理位置时的选择,支持: 询问ask(默认),与普通浏览器的提示一样 允许allow,始终允许网站获取位置 禁止block,始终禁止网站获取位置 | |
location_switch | text | 否 | 1 | 1 | 1 基于IP自动生成对应的位置(默认);0 指定位置 | |
longitude | text | 否 | - | -40.123321 | 指定位置的经度,指定位置时必填,范围是-180到180,支持小数点后六位 | |
latitude | text | 否 | - | 30.123321 | 指定位置的纬度,指定位置时必填,范围是-90到90,支持小数点后六位 | |
accuracy | text | 否 | 1000 | 1000 | 指定位置的精度(米) ,指定位置时必填,范围10-5000,整数 | |
language | list | 否 | ["en-US","en"] | ["en-US","en","zh-CN","zh"] | 浏览器的语言(默认["en-US","en"]),支持传多个语言,格式为字符串数组 | |
language_switch | text | 否 | 1 | 1 | 基于IP国家设置语言,0:关闭 1:启用 | 需升级到V2.4.4.3及以上版本 |
ua | text | 否 | - | Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.113 Safari/537.36 | user-agent用户信息,默认不传使用随机ua库, 自定义需要确保ua格式与内容符合标准 | |
screen_resolution | text | 否 | none | 1024_600 | 屏幕分辨率,none: 使用电脑当前分辨率; random: 随机分辨率; 自定义需要下划线分隔,宽_高 | |
fonts | list | 否 | - | ["all"] ["Arial","Calibri","Cambria"] | 浏览器的字体(默认所有) 自定义支持多字体英文,格式为字符串数组 | |
canvas | text | 否 | 1 | 1 | 浏览器canvas指纹开关 1 添加噪音(默认);0 电脑默认 | |
webgl_image | text | 否 | 1 | 1 | 浏览器webgl图像指纹开关 1 添加噪音(默认);0 电脑默认 | |
webgl | text | 否 | 3 | 3 | 浏览器webgl元数据指纹开关 0 电脑默认;2 自定义(需定义webgl_config);3 随机匹配(该类型仅在添加账号接口支持,更新账号接口暂不支持) | 自定义,需升级到V2.4.3.9及以上版本 |
webgl_config | json | 否 | {"unmasked_vendor": "", "unmasked_renderer": ""} | {"unmasked_vendor": "Google Inc.", "unmasked_renderer": "ANGLE (Intel(R) HD Graphics 620 Direct3D11 vs_5_0 ps_5_0)"} | 浏览器webgl元数据自定义,unmasked_vendor:厂商,unmasked_renderer:渲染 该值只有在webgl为2时才会启动自定义。 当webgl为2时,厂商和渲染均不能为空,否则采用电脑默认 | 需升级到V2.4.3.9及以上版本 |
audio | text | 否 | 1 | 1 | 音频指纹开关 1 添加噪音(默认);0 电脑默认 | |
do_not_track | text | 否 | default | true | DNT即"do not track",“请勿跟踪”浏览器设置开关,支持: default(默认) true开启 false关闭 | |
hardware_concurrency | text | 否 | 4 | 4 | 电脑CPU核数,支持: default(电脑实际CPU核数),2,4(不传默认4核),6,8,16 | |
device_memory | text | 否 | 8 | 8 | 电脑内存大小,支持: default(电脑实际内存大小), 2,4,6,8(不传默认8G) | |
flash | text | 否 | block | allow | flash配置开关,支持: allow启用,block关闭(默认) | |
scan_port_type | text | 否 | 1 | 1 | 端口扫描保护,支持: 1启用(默认), 0关闭 | |
allow_scan_ports | list | 否 | - | ["4000","4001"] | 端口扫描保护启用时允许被扫描的指定端口 格式为字符串数组,默认不传为空 | |
media_devices | text | 否 | 1 | 1 | 媒体设备开关,0:关闭(每个浏览器使用当前电脑默认的媒体设备id)1:启用(使用相匹配的值代替您真实的媒体设备ID) | |
client_rects | text | 否 | 1 | 1 | ClientRects指纹,0:每个浏览器使用当前电脑默认的ClientRects 1:添加相应的噪音,同一电脑上为每个浏览器生成不同的ClientRects | 需升级到V3.6.2及以上版本 |
device_name_switch | text | 否 | 1 | 1 | 设备名称,0:关闭, 每个浏览器使用当前电脑的设备名称 1:掩盖, 使用合适的值代替您真实的设备名称 2:自定义设备名称 | 需升级到3.6.25及以上版本,值为2时需升级到V2.4.8.1及以上版本 |
device_name | text | 否 | - | abcd | 自定义设备名称 | 需升级到V2.4.8.1及以上版本 |
random_ua | json | 否 | - | {"ua_browser":["chrome"],"ua_version":["80"],"ua_system_version":["Windows 10"]} | 支持指定类型、系统、版本设置ua。若同时传入了自定义ua,则优先使用自定义的ua。 ua_browser: 类型,chrome || firefox; ua_system_version: 系统; ua_version: 版本; 该字段仅在添加账号接口支持,更新账号接口暂不支持指定类型、系统、版本更新ua。 详情见random_ua | 建议:ua_browser与browser_kernel_config下的type一致,默认chrome |
speech_switch | text | 否 | 1 | 1 | SpeechVoices指纹,0:每个浏览器使用当前电脑默认的SpeechVoices 1:添加相应的噪音,同一电脑上为每个浏览器生成不同的SpeechVoices | 软件版本需升级到V3.11.10及以上版本,内核版本需升级到V2.5.0.9及以上版本 |
mac_address_config | json | 否 | {"model": "1", "address": ""} | {"model": "2", "address": "E4-02-9B-3B-E9-27"} |
MAC地址:支持设置合适的值代替真是的MAC地址。 model: 0 (使用当前电脑的MAC地址),1(匹配合适的值代替真实的MAC地址), 2(自定义合适的值代替真实的MAC地址) 。 address: 自定义MAC地址,当model为2时,需传入该值。 |
软件版本需升级到V4.3.9及以上版本 |
browser_kernel_config | json | 否 | {"version": "latest", "type":"chrome"} | {"version": "99", "type":"chrome"} |
使用对应浏览器内核打开浏览器 version:内核版本,参数说明:”92“为92版内核、”99“为99版内核、”latest“为智能匹配; type:浏览器类型,chrome || firefox |
软件版本需升级到v4.4.21及以上版本。该版本仅支持version的可选值为'92'、'99'、'latest'。firefox仅支持100内核版本 |
gpu | text | 否 | 0 | 0 | 0:使用【本地设置-硬件加速】的配置 1:开启硬件加速,可提升浏览器性能。使用不同的硬件,可能会影响硬件相关的指纹。 2:关闭硬件加速,会降低浏览器性能。 |
ua_system_version: list,非必填,不填默认在所有系统中随机,支持 Android, iOS, Windows, Mac OS X , Linux。 ua_version: list,非必填,支持当前主流版本,不填默认在所有版本中随机。
fingerprint_config需要传入对应的JSON对象,示例: { "automatic_timezone": "1", "language": ["en-US","en","zh-CN","zh"], "ua": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141", "flash": "block", "webrtc": "disabled" }
国家码Country code列表:注意传参时填前面的缩写,如cn: 'China'传参时填cn
ad: 'Andorra'
ae: 'United Arab Emirates'
af: 'Afghanistan'
ag: 'Antigua & Barbuda'
ai: 'Anguilla'
al: 'Albania'
am: 'Armenia'
ao: 'Angola'
aq: 'Antarctica'
ar: 'Argentina'
as: 'American Samoa'
at: 'Austria'
au: 'Australia'
aw: 'Aruba'
ax: '_land Islands'
az: 'Azerbaijan'
ba: 'Bosnia & Herzegovina'
bb: 'Barbados'
bd: 'Bangladesh'
be: 'Belgium'
bf: 'Burkina'
bg: 'Bulgaria'
bh: 'Bahrain'
bi: 'Burundi'
bj: 'Benin'
bl: 'Saint Barthélemy'
bm: 'Bermuda'
bn: 'Brunei'
bo: 'Bolivia'
bq: 'Caribbean Netherlands'
br: 'Brazil'
bs: 'The Bahamas'
bt: 'Bhutan'
bv: 'Bouvet Island'
bw: 'Botswana'
by: 'Belarus'
bz: 'Belize'
ca: 'Canada'
cc: 'Cocos (Keeling) Islands'
cf: 'Central African Republic'
ch: 'Switzerland'
cl: 'Chile'
cm: 'Cameroon'
co: 'Colombia'
cr: 'Costa Rica'
cu: 'Cuba'
cv: 'Cape Verde'
cx: 'Christmas Island'
cy: 'Cyprus'
cz: 'Czech Republic'
de: 'Germany'
dj: 'Djibouti'
dk: 'Denmark'
dm: 'Dominica'
do: 'Dominican Republic'
dz: 'Algeria'
ec: 'Ecuador'
ee: 'Estonia'
eg: 'Egypt'
eh: 'Western Sahara'
er: 'Eritrea'
es: 'Spain'
fi: 'Finland'
fj: 'Fiji'
fk: 'Falkland Islands'
fm: 'Federated States of Micronesia'
fo: 'Faroe Islands'
fr: 'France'
ga: 'Gabon'
gd: 'Grenada'
ge: 'Georgia'
gf: 'French Guiana'
gh: 'Ghana'
gi: 'Gibraltar'
gl: 'Greenland'
gn: 'Guinea'
gp: 'Guadeloupe'
gq: 'Equatorial Guinea'
gr: 'Greece'
gs: 'South Georgia and the South Sandwich Islands'
gt: 'Guatemala'
gu: 'Guam'
gw: 'Guinea-Bissau'
gy: 'Guyana'
hk: 'China Hong Kong'
hm: 'Heard Island and McDonald Islands'
hn: 'Honduras'
hr: 'Croatia'
ht: 'Haiti'
hu: 'Hungary'
id: 'Indonesia'
ie: 'Ireland'
il: 'Israel'
im: 'Isle of Man'
in: 'India'
io: 'British Indian Ocean Territory'
iq: 'Iraq'
ir: 'Iran'
is: 'Iceland'
it: 'Italy'
je: 'Jersey'
jm: 'Jamaica'
jo: 'Jordan'
jp: 'Japan'
kh: 'Cambodia'
ki: 'Kiribati'
km: 'The Comoros'
kw: 'Kuwait'
ky: 'Cayman Islands'
lb: 'Lebanon'
li: 'Liechtenstein'
lk: 'Sri Lanka'
lr: 'Liberia'
ls: 'Lesotho'
lt: 'Lithuania'
lu: 'Luxembourg'
lv: 'Latvia'
ly: 'Libya'
ma: 'Morocco'
mc: 'Monaco'
md: 'Moldova'
me: 'Montenegro'
mf: 'Saint Martin (France)'
mg: 'Madagascar'
mh: 'Marshall islands'
mk: 'Republic of Macedonia (FYROM)'
ml: 'Mali'
mm: 'Myanmar (Burma)'
mo: 'China Macao'
mq: 'Martinique'
mr: 'Mauritania'
ms: 'Montserrat'
mt: 'Malta'
mv: 'Maldives'
mw: 'Malawi'
mx: 'Mexico'
my: 'Malaysia'
na: 'Namibia'
ne: 'Niger'
nf: 'Norfolk Island'
ng: 'Nigeria'
ni: 'Nicaragua'
nl: 'Netherlands'
no: 'Norway'
np: 'Nepal'
nr: 'Nauru'
om: 'Oman'
pa: 'Panama'
pe: 'Peru'
pf: 'French polynesia'
pg: 'Papua New Guinea'
ph: 'The Philippines'
pk: 'Pakistan'
pl: 'Poland'
pn: 'Pitcairn Islands'
pr: 'Puerto Rico'
ps: 'Palestinian territories'
pw: 'Palau'
py: 'Paraguay'
qa: 'Qatar'
re: 'Réunion'
ro: 'Romania'
rs: 'Serbia'
ru: 'Russian Federation'
rw: 'Rwanda'
sb: 'Solomon Islands'
sc: 'Seychelles'
sd: 'Sudan'
se: 'Sweden'
sg: 'Singapore'
si: 'Slovenia'
sj: 'Template:Country data SJM Svalbard'
sk: 'Slovakia'
sl: 'Sierra Leone'
sm: 'San Marino'
sn: 'Senegal'
so: 'Somalia'
sr: 'Suriname'
ss: 'South Sudan'
st: 'Sao Tome & Principe'
sv: 'El Salvador'
sy: 'Syria'
sz: 'Swaziland'
tc: 'Turks & Caicos Islands'
td: 'Chad'
tg: 'Togo'
th: 'Thailand'
tk: 'Tokelau'
tl: 'Timor-Leste (East Timor)'
tn: 'Tunisia'
to: 'Tonga'
tr: 'Turkey'
tv: 'Tuvalu'
tz: 'Tanzania'
ua: 'Ukraine'
ug: 'Uganda'
us: 'United States of America (USA)'
uy: 'Uruguay'
va: 'Vatican City (The Holy See)'
ve: 'Venezuela'
vg: 'British Virgin Islands'
vi: 'United States Virgin Islands'
vn: 'Vietnam'
wf: 'Wallis and Futuna'
ws: 'Samoa'
ye: 'Yemen'
yt: 'Mayotte'
za: 'South Africa'
zm: 'Zambia'
zw: 'Zimbabwe'
cn: 'China'
cg: 'Republic of the Congo'
cd: 'Democratic Republic of the Congo'
mz: 'Mozambique'
gg: 'Guernsey'
gm: 'Gambia'
mp: 'Northern Mariana Islands'
et: 'Ethiopia'
nc: 'New Caledonia'
vu: 'Vanuatu'
tf: 'French Southern Territories'
nu: 'Niue'
um: 'United States Minor Outlying Islands'
ck: 'Cook Islands'
gb: 'Great Britain'
tt: 'Trinidad & Tobago'
vc: 'St. Vincent & the Grenadines'
tw: 'China Taiwan'
nz: 'New Zealand'
sa: 'Saudi Arabia'
la: 'Laos'
kp: 'North Korea'
kr: 'South Korea'
pt: 'Portugal'
kg: 'Kyrgyzstan'
kz: 'Kazakhstan'
tj: 'Tajikistan'
tm: 'Turkmenistan'
uz: 'Uzbekistan'
kn: 'St. Kitts & Nevis'
pm: 'Saint-Pierre and Miquelon'
sh: 'St. Helena & Dependencies'
lc: 'St. Lucia'
mu: 'Mauritius'
ci: 'C_te d\'Ivoire'
ke: 'Kenya'
mn: 'Mongolia'
时区TimeZone列表:注意传参时填gmt的内容,如tz: 'GMT+08:00', gmt: 'Asia/Shanghai' 传参时填Asia/Shanghai
tz: 'GMT-09:00', gmt: 'America/Metlakatla'
tz: 'GMT-12:00', gmt: 'Etc/GMT+12'
tz: 'GMT-11:00', gmt: 'Etc/GMT+11'
tz: 'GMT-11:00', gmt: 'Pacific/Midway'
tz: 'GMT-11:00', gmt: 'Pacific/Niue'
tz: 'GMT-11:00', gmt: 'Pacific/Pago Pago'
tz: 'GMT-10:00', gmt: 'America/Adak'
tz: 'GMT-10:00', gmt: 'Etc/GMT+10'
tz: 'GMT-10:00', gmt: 'HST'
tz: 'GMT-10:00', gmt: 'Pacific/Honolulu'
tz: 'GMT-10:00', gmt: 'Pacific/Rarotonga'
tz: 'GMT-10:00', gmt: 'Pacific/Tahiti'
tz: 'GMT-09:30', gmt: 'Pacific/Marquesas'
tz: 'GMT-09:00', gmt: 'America/Anchorage'
tz: 'GMT-09:00', gmt: 'America/Juneau'
tz: 'GMT-09:00', gmt: 'America/Nome'
tz: 'GMT-09:00', gmt: 'America/Sitka'
tz: 'GMT-09:00', gmt: 'America/Yakutat'
tz: 'GMT-09:00', gmt: 'Etc/GMT+9'
tz: 'GMT-09:00', gmt: 'Pacific/Gambier'
tz: 'GMT-08:00', gmt: 'America/Los Angeles'
tz: 'GMT-08:00', gmt: 'America/Tijuana'
tz: 'GMT-08:00', gmt: 'America/Vancouver'
tz: 'GMT-08:00', gmt: 'Etc/GMT+8'
tz: 'GMT-08:00', gmt: 'PST8PDT'
tz: 'GMT-08:00', gmt: 'Pacific/Pitcairn'
tz: 'GMT-07:00', gmt: 'America/Boise'
tz: 'GMT-07:00', gmt: 'America/Cambridge Bay'
tz: 'GMT-07:00', gmt: 'America/Chihuahua'
tz: 'GMT-07:00', gmt: 'America/Creston'
tz: 'GMT-07:00', gmt: 'America/Dawson'
tz: 'GMT-07:00', gmt: 'America/Dawson Creek'
tz: 'GMT-07:00', gmt: 'America/Denver'
tz: 'GMT-07:00', gmt: 'America/Edmonton'
tz: 'GMT-07:00', gmt: 'America/Fort Nelson'
tz: 'GMT-07:00', gmt: 'America/Hermosillo'
tz: 'GMT-07:00', gmt: 'America/Inuvik'
tz: 'GMT-07:00', gmt: 'America/Mazatlan'
tz: 'GMT-07:00', gmt: 'America/Ojinaga'
tz: 'GMT-07:00', gmt: 'America/Phoenix'
tz: 'GMT-07:00', gmt: 'America/Whitehorse'
tz: 'GMT-07:00', gmt: 'America/Yellowknife'
tz: 'GMT-07:00', gmt: 'Etc/GMT+7'
tz: 'GMT-07:00', gmt: 'MST'
tz: 'GMT-07:00', gmt: 'MST7MDT'
tz: 'GMT-06:00', gmt: 'America/Bahia Banderas'
tz: 'GMT-06:00', gmt: 'America/Belize'
tz: 'GMT-06:00', gmt: 'America/Chicago'
tz: 'GMT-06:00', gmt: 'America/Costa Rica'
tz: 'GMT-06:00', gmt: 'America/El Salvador'
tz: 'GMT-06:00', gmt: 'America/Guatemala'
tz: 'GMT-06:00', gmt: 'America/Indiana/Knox'
tz: 'GMT-06:00', gmt: 'America/Indiana/Tell City'
tz: 'GMT-06:00', gmt: 'America/Managua'
tz: 'GMT-06:00', gmt: 'America/Matamoros'
tz: 'GMT-06:00', gmt: 'America/Menominee'
tz: 'GMT-06:00', gmt: 'America/Merida'
tz: 'GMT-06:00', gmt: 'America/Mexico City'
tz: 'GMT-06:00', gmt: 'America/Monterrey'
tz: 'GMT-06:00', gmt: 'America/North Dakota/Beulah'
tz: 'GMT-06:00', gmt: 'America/North Dakota/Center'
tz: 'GMT-06:00', gmt: 'America/North Dakota/New_Salem'
tz: 'GMT-06:00', gmt: 'America/Rainy River'
tz: 'GMT-06:00', gmt: 'America/Rankin Inlet'
tz: 'GMT-06:00', gmt: 'America/Regina'
tz: 'GMT-06:00', gmt: 'America/Resolute'
tz: 'GMT-06:00', gmt: 'America/Swift Current'
tz: 'GMT-06:00', gmt: 'America/Tegucigalpa'
tz: 'GMT-06:00', gmt: 'America/Winnipeg'
tz: 'GMT-06:00', gmt: 'CST6CDT'
tz: 'GMT-06:00', gmt: 'Etc/GMT+6'
tz: 'GMT-06:00', gmt: 'Pacific/Galapagos'
tz: 'GMT-05:00', gmt: 'America/Atikokan'
tz: 'GMT-05:00', gmt: 'America/Bogota'
tz: 'GMT-05:00', gmt: 'America/Cancun'
tz: 'GMT-05:00', gmt: 'America/Cayman'
tz: 'GMT-05:00', gmt: 'America/Detroit'
tz: 'GMT-05:00', gmt: 'America/Eirunepe'
tz: 'GMT-05:00', gmt: 'America/Grand Turk'
tz: 'GMT-05:00', gmt: 'America/Guayaquil'
tz: 'GMT-05:00', gmt: 'America/Havana'
tz: 'GMT-05:00', gmt: 'America/Indiana/Indianapolis'
tz: 'GMT-05:00', gmt: 'America/Indiana/Marengo'
tz: 'GMT-05:00', gmt: 'America/Indiana/Petersburg'
tz: 'GMT-05:00', gmt: 'America/Indiana/Vevay'
tz: 'GMT-05:00', gmt: 'America/Indiana/Vincennes'
tz: 'GMT-05:00', gmt: 'America/Indiana/Winamac'
tz: 'GMT-05:00', gmt: 'America/Indianapolis'
tz: 'GMT-05:00', gmt: 'America/Iqaluit'
tz: 'GMT-05:00', gmt: 'America/Jamaica'
tz: 'GMT-05:00', gmt: 'America/Kentucky/Louisville'
tz: 'GMT-05:00', gmt: 'America/Kentucky/Monticello'
tz: 'GMT-05:00', gmt: 'America/Lima'
tz: 'GMT-05:00', gmt: 'America/Montreal'
tz: 'GMT-05:00', gmt: 'America/Nassau'
tz: 'GMT-05:00', gmt: 'America/New York'
tz: 'GMT-05:00', gmt: 'America/Nipigon'
tz: 'GMT-05:00', gmt: 'America/Panama'
tz: 'GMT-05:00', gmt: 'America/Pangnirtung'
tz: 'GMT-05:00', gmt: 'America/Port-au-Prince'
tz: 'GMT-05:00', gmt: 'America/Rio Branco'
tz: 'GMT-05:00', gmt: 'America/Thunder Bay'
tz: 'GMT-05:00', gmt: 'America/Toronto'
tz: 'GMT-05:00', gmt: 'EST'
tz: 'GMT-05:00', gmt: 'EST5EDT'
tz: 'GMT-05:00', gmt: 'Etc/GMT+5'
tz: 'GMT-05:00', gmt: 'Pacific/Easter'
tz: 'GMT-04:00', gmt: 'America/Anguilla'
tz: 'GMT-04:00', gmt: 'America/Antigua'
tz: 'GMT-04:00', gmt: 'America/Aruba'
tz: 'GMT-04:00', gmt: 'America/Barbados'
tz: 'GMT-04:00', gmt: 'America/Blanc-Sablon'
tz: 'GMT-04:00', gmt: 'America/Boa Vista'
tz: 'GMT-04:00', gmt: 'America/Campo Grande'
tz: 'GMT-04:00', gmt: 'America/Caracas'
tz: 'GMT-04:00', gmt: 'America/Cuiaba'
tz: 'GMT-04:00', gmt: 'America/Curacao'
tz: 'GMT-04:00', gmt: 'America/Dominica'
tz: 'GMT-04:00', gmt: 'America/Glace Bay'
tz: 'GMT-04:00', gmt: 'America/Goose Bay'
tz: 'GMT-04:00', gmt: 'America/Grenada'
tz: 'GMT-04:00', gmt: 'America/Guadeloupe'
tz: 'GMT-04:00', gmt: 'America/Guyana'
tz: 'GMT-04:00', gmt: 'America/Halifax'
tz: 'GMT-04:00', gmt: 'America/Kralendijk'
tz: 'GMT-04:00', gmt: 'America/La Paz'
tz: 'GMT-04:00', gmt: 'America/Lower Princes'
tz: 'GMT-04:00', gmt: 'America/Manaus'
tz: 'GMT-04:00', gmt: 'America/Marigot'
tz: 'GMT-04:00', gmt: 'America/Martinique'
tz: 'GMT-04:00', gmt: 'America/Moncton'
tz: 'GMT-04:00', gmt: 'America/Montserrat'
tz: 'GMT-04:00', gmt: 'America/Port of_Spain'
tz: 'GMT-04:00', gmt: 'America/Porto Velho'
tz: 'GMT-04:00', gmt: 'America/Puerto Rico'
tz: 'GMT-04:00', gmt: 'America/Santo Domingo'
tz: 'GMT-04:00', gmt: 'America/St Barthelemy'
tz: 'GMT-04:00', gmt: 'America/St Kitts'
tz: 'GMT-04:00', gmt: 'America/St Lucia'
tz: 'GMT-04:00', gmt: 'America/St Thomas'
tz: 'GMT-04:00', gmt: 'America/St Vincent'
tz: 'GMT-04:00', gmt: 'America/Thule'
tz: 'GMT-04:00', gmt: 'America/Tortola'
tz: 'GMT-04:00', gmt: 'Atlantic/Bermuda'
tz: 'GMT-04:00', gmt: 'Etc/GMT+4'
tz: 'GMT-03:30', gmt: 'America/St Johns'
tz: 'GMT-03:00', gmt: 'America/Araguaina'
tz: 'GMT-03:00', gmt: 'America/Argentina/Buenos Aires'
tz: 'GMT-03:00', gmt: 'America/Argentina/Catamarca'
tz: 'GMT-03:00', gmt: 'America/Argentina/Cordoba'
tz: 'GMT-03:00', gmt: 'America/Argentina/Jujuy'
tz: 'GMT-03:00', gmt: 'America/Argentina/La Rioja'
tz: 'GMT-03:00', gmt: 'America/Argentina/Mendoza'
tz: 'GMT-03:00', gmt: 'America/Argentina/Rio Gallegos'
tz: 'GMT-03:00', gmt: 'America/Argentina/Salta'
tz: 'GMT-03:00', gmt: 'America/Argentina/San Juan'
tz: 'GMT-03:00', gmt: 'America/Argentina/San Luis'
tz: 'GMT-03:00', gmt: 'America/Argentina/Tucuman'
tz: 'GMT-03:00', gmt: 'America/Argentina/Ushuaia'
tz: 'GMT-03:00', gmt: 'America/Asuncion'
tz: 'GMT-03:00', gmt: 'America/Bahia'
tz: 'GMT-03:00', gmt: 'America/Belem'
tz: 'GMT-03:00', gmt: 'America/Cayenne'
tz: 'GMT-03:00', gmt: 'America/Fortaleza'
tz: 'GMT-03:00', gmt: 'America/Godthab'
tz: 'GMT-03:00', gmt: 'America/Maceio'
tz: 'GMT-03:00', gmt: 'America/Miquelon'
tz: 'GMT-03:00', gmt: 'America/Montevideo'
tz: 'GMT-03:00', gmt: 'America/Nuuk'
tz: 'GMT-03:00', gmt: 'America/Paramaribo'
tz: 'GMT-03:00', gmt: 'America/Punta Arenas'
tz: 'GMT-03:00', gmt: 'America/Recife'
tz: 'GMT-03:00', gmt: 'America/Santarem'
tz: 'GMT-03:00', gmt: 'America/Santiago'
tz: 'GMT-03:00', gmt: 'America/Sao Paulo'
tz: 'GMT-03:00', gmt: 'Antarctica/Palmer'
tz: 'GMT-03:00', gmt: 'Antarctica/Rothera'
tz: 'GMT-03:00', gmt: 'Atlantic/Stanley'
tz: 'GMT-03:00', gmt: 'Etc/GMT+3'
tz: 'GMT-02:00', gmt: 'America/Noronha'
tz: 'GMT-02:00', gmt: 'Atlantic/South Georgia'
tz: 'GMT-02:00', gmt: 'Etc/GMT+2'
tz: 'GMT-01:00', gmt: 'America/Scoresbysund'
tz: 'GMT-01:00', gmt: 'Atlantic/Azores'
tz: 'GMT-01:00', gmt: 'Atlantic/Cape Verde'
tz: 'GMT-01:00', gmt: 'Etc/GMT+1'
tz: 'GMT+00:00', gmt: 'Africa/Abidjan'
tz: 'GMT+00:00', gmt: 'Africa/Accra'
tz: 'GMT+00:00', gmt: 'Africa/Bamako'
tz: 'GMT+00:00', gmt: 'Africa/Banjul'
tz: 'GMT+00:00', gmt: 'Africa/Bissau'
tz: 'GMT+00:00', gmt: 'Africa/Conakry'
tz: 'GMT+00:00', gmt: 'Africa/Dakar'
tz: 'GMT+00:00', gmt: 'Africa/Freetown'
tz: 'GMT+00:00', gmt: 'Africa/Lome'
tz: 'GMT+00:00', gmt: 'Africa/Monrovia'
tz: 'GMT+00:00', gmt: 'Africa/Nouakchott'
tz: 'GMT+00:00', gmt: 'Africa/Ouagadougou'
tz: 'GMT+00:00', gmt: 'Africa/Sao Tome'
tz: 'GMT+00:00', gmt: 'America/Danmarkshavn'
tz: 'GMT+00:00', gmt: 'Antarctica/Troll'
tz: 'GMT+00:00', gmt: 'Atlantic/Canary'
tz: 'GMT+00:00', gmt: 'Atlantic/Faroe'
tz: 'GMT+00:00', gmt: 'Atlantic/Madeira'
tz: 'GMT+00:00', gmt: 'Atlantic/Reykjavik'
tz: 'GMT+00:00', gmt: 'Atlantic/St Helena'
tz: 'GMT+00:00', gmt: 'Etc/GMT'
tz: 'GMT+00:00', gmt: 'Etc/GMT+0'
tz: 'GMT+00:00', gmt: 'Etc/GMT-0'
tz: 'GMT+00:00', gmt: 'Etc/GMT0'
tz: 'GMT+00:00', gmt: 'Etc/Greenwich'
tz: 'GMT+00:00', gmt: 'Etc/Universal'
tz: 'GMT+00:00', gmt: 'Etc/Zulu'
tz: 'GMT+00:00', gmt: 'Europe/Dublin'
tz: 'GMT+00:00', gmt: 'Europe/Guernsey'
tz: 'GMT+00:00', gmt: 'Europe/Isle of_Man'
tz: 'GMT+00:00', gmt: 'Europe/Jersey'
tz: 'GMT+00:00', gmt: 'Europe/Lisbon'
tz: 'GMT+00:00', gmt: 'Europe/London'
tz: 'GMT+00:00', gmt: 'GMT'
tz: 'GMT+00:00', gmt: 'UTC'
tz: 'GMT+00:00', gmt: 'WET'
tz: 'GMT+01:00', gmt: 'Africa/Algiers'
tz: 'GMT+01:00', gmt: 'Africa/Bangui'
tz: 'GMT+01:00', gmt: 'Africa/Brazzaville'
tz: 'GMT+01:00', gmt: 'Africa/Casablanca'
tz: 'GMT+01:00', gmt: 'Africa/Ceuta'
tz: 'GMT+01:00', gmt: 'Africa/Douala'
tz: 'GMT+01:00', gmt: 'Africa/El Aaiun'
tz: 'GMT+01:00', gmt: 'Africa/Kinshasa'
tz: 'GMT+01:00', gmt: 'Africa/Lagos'
tz: 'GMT+01:00', gmt: 'Africa/Libreville'
tz: 'GMT+01:00', gmt: 'Africa/Luanda'
tz: 'GMT+01:00', gmt: 'Africa/Malabo'
tz: 'GMT+01:00', gmt: 'Africa/Ndjamena'
tz: 'GMT+01:00', gmt: 'Africa/Niamey'
tz: 'GMT+01:00', gmt: 'Africa/Porto-Novo'
tz: 'GMT+01:00', gmt: 'Africa/Tunis'
tz: 'GMT+01:00', gmt: 'Arctic/Longyearbyen'
tz: 'GMT+01:00', gmt: 'CET'
tz: 'GMT+01:00', gmt: 'Etc/GMT-1'
tz: 'GMT+01:00', gmt: 'Europe/Amsterdam'
tz: 'GMT+01:00', gmt: 'Europe/Andorra'
tz: 'GMT+01:00', gmt: 'Europe/Belgrade'
tz: 'GMT+01:00', gmt: 'Europe/Berlin'
tz: 'GMT+01:00', gmt: 'Europe/Bratislava'
tz: 'GMT+01:00', gmt: 'Europe/Brussels'
tz: 'GMT+01:00', gmt: 'Europe/Budapest'
tz: 'GMT+01:00', gmt: 'Europe/Busingen'
tz: 'GMT+01:00', gmt: 'Europe/Copenhagen'
tz: 'GMT+01:00', gmt: 'Europe/Gibraltar'
tz: 'GMT+01:00', gmt: 'Europe/Ljubljana'
tz: 'GMT+01:00', gmt: 'Europe/Luxembourg'
tz: 'GMT+01:00', gmt: 'Europe/Madrid'
tz: 'GMT+01:00', gmt: 'Europe/Malta'
tz: 'GMT+01:00', gmt: 'Europe/Monaco'
tz: 'GMT+01:00', gmt: 'Europe/Oslo'
tz: 'GMT+01:00', gmt: 'Europe/Paris'
tz: 'GMT+01:00', gmt: 'Europe/Podgorica'
tz: 'GMT+01:00', gmt: 'Europe/Prague'
tz: 'GMT+01:00', gmt: 'Europe/Rome'
tz: 'GMT+01:00', gmt: 'Europe/San Marino'
tz: 'GMT+01:00', gmt: 'Europe/Sarajevo'
tz: 'GMT+01:00', gmt: 'Europe/Skopje'
tz: 'GMT+01:00', gmt: 'Europe/Stockholm'
tz: 'GMT+01:00', gmt: 'Europe/Tirane'
tz: 'GMT+01:00', gmt: 'Europe/Vaduz'
tz: 'GMT+01:00', gmt: 'Europe/Vatican'
tz: 'GMT+01:00', gmt: 'Europe/Vienna'
tz: 'GMT+01:00', gmt: 'Europe/Warsaw'
tz: 'GMT+01:00', gmt: 'Europe/Zagreb'
tz: 'GMT+01:00', gmt: 'Europe/Zurich'
tz: 'GMT+01:00', gmt: 'MET'
tz: 'GMT+02:00', gmt: 'Africa/Blantyre'
tz: 'GMT+02:00', gmt: 'Africa/Bujumbura'
tz: 'GMT+02:00', gmt: 'Africa/Cairo'
tz: 'GMT+02:00', gmt: 'Africa/Gaborone'
tz: 'GMT+02:00', gmt: 'Africa/Harare'
tz: 'GMT+02:00', gmt: 'Africa/Johannesburg'
tz: 'GMT+02:00', gmt: 'Africa/Khartoum'
tz: 'GMT+02:00', gmt: 'Africa/Kigali'
tz: 'GMT+02:00', gmt: 'Africa/Lubumbashi'
tz: 'GMT+02:00', gmt: 'Africa/Lusaka'
tz: 'GMT+02:00', gmt: 'Africa/Maputo'
tz: 'GMT+02:00', gmt: 'Africa/Maseru'
tz: 'GMT+02:00', gmt: 'Africa/Mbabane'
tz: 'GMT+02:00', gmt: 'Africa/Tripoli'
tz: 'GMT+02:00', gmt: 'Africa/Windhoek'
tz: 'GMT+02:00', gmt: 'Asia/Amman'
tz: 'GMT+02:00', gmt: 'Asia/Beirut'
tz: 'GMT+02:00', gmt: 'Asia/Damascus'
tz: 'GMT+02:00', gmt: 'Asia/Famagusta'
tz: 'GMT+02:00', gmt: 'Asia/Gaza'
tz: 'GMT+02:00', gmt: 'Asia/Hebron'
tz: 'GMT+02:00', gmt: 'Asia/Jerusalem'
tz: 'GMT+02:00', gmt: 'Asia/Nicosia'
tz: 'GMT+02:00', gmt: 'EET'
tz: 'GMT+02:00', gmt: 'Etc/GMT-2'
tz: 'GMT+02:00', gmt: 'Europe/Athens'
tz: 'GMT+02:00', gmt: 'Europe/Bucharest'
tz: 'GMT+02:00', gmt: 'Europe/Chisinau'
tz: 'GMT+02:00', gmt: 'Europe/Helsinki'
tz: 'GMT+02:00', gmt: 'Europe/Kaliningrad'
tz: 'GMT+02:00', gmt: 'Europe/Kiev'
tz: 'GMT+02:00', gmt: 'Europe/Mariehamn'
tz: 'GMT+02:00', gmt: 'Europe/Nicosia'
tz: 'GMT+02:00', gmt: 'Europe/Riga'
tz: 'GMT+02:00', gmt: 'Europe/Sofia'
tz: 'GMT+02:00', gmt: 'Europe/Tallinn'
tz: 'GMT+02:00', gmt: 'Europe/Uzhgorod'
tz: 'GMT+02:00', gmt: 'Europe/Vilnius'
tz: 'GMT+02:00', gmt: 'Europe/Zaporozhye'
tz: 'GMT+03:00', gmt: 'Africa/Addis Ababa'
tz: 'GMT+03:00', gmt: 'Africa/Asmara'
tz: 'GMT+03:00', gmt: 'Africa/Dar es_Salaam'
tz: 'GMT+03:00', gmt: 'Africa/Djibouti'
tz: 'GMT+03:00', gmt: 'Africa/Juba'
tz: 'GMT+03:00', gmt: 'Africa/Kampala'
tz: 'GMT+03:00', gmt: 'Africa/Mogadishu'
tz: 'GMT+03:00', gmt: 'Africa/Nairobi'
tz: 'GMT+03:00', gmt: 'Antarctica/Syowa'
tz: 'GMT+03:00', gmt: 'Asia/Aden'
tz: 'GMT+03:00', gmt: 'Asia/Baghdad'
tz: 'GMT+03:00', gmt: 'Asia/Bahrain'
tz: 'GMT+03:00', gmt: 'Asia/Istanbul'
tz: 'GMT+03:00', gmt: 'Asia/Kuwait'
tz: 'GMT+03:00', gmt: 'Asia/Qatar'
tz: 'GMT+03:00', gmt: 'Asia/Riyadh'
tz: 'GMT+03:00', gmt: 'Etc/GMT-3'
tz: 'GMT+03:00', gmt: 'Europe/Istanbul'
tz: 'GMT+03:00', gmt: 'Europe/Kirov'
tz: 'GMT+03:00', gmt: 'Europe/Minsk'
tz: 'GMT+03:00', gmt: 'Europe/Moscow'
tz: 'GMT+03:00', gmt: 'Europe/Simferopol'
tz: 'GMT+03:00', gmt: 'Indian/Antananarivo'
tz: 'GMT+03:00', gmt: 'Indian/Comoro'
tz: 'GMT+03:00', gmt: 'Indian/Mayotte'
tz: 'GMT+03:30', gmt: 'Asia/Tehran'
tz: 'GMT+04:00', gmt: 'Asia/Baku'
tz: 'GMT+04:00', gmt: 'Asia/Dubai'
tz: 'GMT+04:00', gmt: 'Asia/Muscat'
tz: 'GMT+04:00', gmt: 'Asia/Tbilisi'
tz: 'GMT+04:00', gmt: 'Asia/Yerevan'
tz: 'GMT+04:00', gmt: 'Etc/GMT-4'
tz: 'GMT+04:00', gmt: 'Europe/Astrakhan'
tz: 'GMT+04:00', gmt: 'Europe/Samara'
tz: 'GMT+04:00', gmt: 'Europe/Saratov'
tz: 'GMT+04:00', gmt: 'Europe/Ulyanovsk'
tz: 'GMT+04:00', gmt: 'Europe/Volgograd'
tz: 'GMT+04:00', gmt: 'Indian/Mahe'
tz: 'GMT+04:00', gmt: 'Indian/Mauritius'
tz: 'GMT+04:00', gmt: 'Indian/Reunion'
tz: 'GMT+04:30', gmt: 'Asia/Kabul'
tz: 'GMT+05:00', gmt: 'Antarctica/Mawson'
tz: 'GMT+05:00', gmt: 'Asia/Aqtau'
tz: 'GMT+05:00', gmt: 'Asia/Aqtobe'
tz: 'GMT+05:00', gmt: 'Asia/Ashgabat'
tz: 'GMT+05:00', gmt: 'Asia/Atyrau'
tz: 'GMT+05:00', gmt: 'Asia/Dushanbe'
tz: 'GMT+05:00', gmt: 'Asia/Karachi'
tz: 'GMT+05:00', gmt: 'Asia/Oral'
tz: 'GMT+05:00', gmt: 'Asia/Qyzylorda'
tz: 'GMT+05:00', gmt: 'Asia/Samarkand'
tz: 'GMT+05:00', gmt: 'Asia/Tashkent'
tz: 'GMT+05:00', gmt: 'Asia/Yekaterinburg'
tz: 'GMT+05:00', gmt: 'Etc/GMT-5'
tz: 'GMT+05:00', gmt: 'Indian/Kerguelen'
tz: 'GMT+05:00', gmt: 'Indian/Maldives'
tz: 'GMT+05:30', gmt: 'Asia/Calcutta'
tz: 'GMT+05:30', gmt: 'Asia/Colombo'
tz: 'GMT+05:30', gmt: 'Asia/Kolkata'
tz: 'GMT+05:45', gmt: 'Asia/Kathmandu'
tz: 'GMT+05:45', gmt: 'Asia/Katmandu'
tz: 'GMT+06:00', gmt: 'Antarctica/Vostok'
tz: 'GMT+06:00', gmt: 'Asia/Almaty'
tz: 'GMT+06:00', gmt: 'Asia/Bishkek'
tz: 'GMT+06:00', gmt: 'Asia/Dhaka'
tz: 'GMT+06:00', gmt: 'Asia/Omsk'
tz: 'GMT+06:00', gmt: 'Asia/Qostanay'
tz: 'GMT+06:00', gmt: 'Asia/Thimphu'
tz: 'GMT+06:00', gmt: 'Asia/Urumqi'
tz: 'GMT+06:00', gmt: 'Etc/GMT-6'
tz: 'GMT+06:00', gmt: 'Indian/Chagos'
tz: 'GMT+06:30', gmt: 'Asia/Yangon'
tz: 'GMT+06:30', gmt: 'Indian/Cocos'
tz: 'GMT+07:00', gmt: 'Antarctica/Davis'
tz: 'GMT+07:00', gmt: 'Asia/Bangkok'
tz: 'GMT+07:00', gmt: 'Asia/Barnaul'
tz: 'GMT+07:00', gmt: 'Asia/Ho Chi_Minh'
tz: 'GMT+07:00', gmt: 'Asia/Hovd'
tz: 'GMT+07:00', gmt: 'Asia/Jakarta'
tz: 'GMT+07:00', gmt: 'Asia/Krasnoyarsk'
tz: 'GMT+07:00', gmt: 'Asia/Novokuznetsk'
tz: 'GMT+07:00', gmt: 'Asia/Novosibirsk'
tz: 'GMT+07:00', gmt: 'Asia/Phnom Penh'
tz: 'GMT+07:00', gmt: 'Asia/Pontianak'
tz: 'GMT+07:00', gmt: 'Asia/Tomsk'
tz: 'GMT+07:00', gmt: 'Asia/Vientiane'
tz: 'GMT+07:00', gmt: 'Etc/GMT-7'
tz: 'GMT+07:00', gmt: 'Indian/Christmas'
tz: 'GMT+08:00', gmt: 'Asia/Brunei'
tz: 'GMT+08:00', gmt: 'Asia/Choibalsan'
tz: 'GMT+08:00', gmt: 'Asia/Hong Kong'
tz: 'GMT+08:00', gmt: 'Asia/Irkutsk'
tz: 'GMT+08:00', gmt: 'Asia/Kuala Lumpur'
tz: 'GMT+08:00', gmt: 'Asia/Kuching'
tz: 'GMT+08:00', gmt: 'Asia/Macau'
tz: 'GMT+08:00', gmt: 'Asia/Makassar'
tz: 'GMT+08:00', gmt: 'Asia/Manila'
tz: 'GMT+08:00', gmt: 'Asia/Shanghai'
tz: 'GMT+08:00', gmt: 'Asia/Singapore'
tz: 'GMT+08:00', gmt: 'Asia/Taipei'
tz: 'GMT+08:00', gmt: 'Asia/Ulaanbaatar'
tz: 'GMT+08:00', gmt: 'Australia/Perth'
tz: 'GMT+08:00', gmt: 'Etc/GMT-8'
tz: 'GMT+08:45', gmt: 'Australia/Eucla'
tz: 'GMT+09:00', gmt: 'Asia/Chita'
tz: 'GMT+09:00', gmt: 'Asia/Dili'
tz: 'GMT+09:00', gmt: 'Asia/Jayapura'
tz: 'GMT+09:00', gmt: 'Asia/Khandyga'
tz: 'GMT+09:00', gmt: 'Asia/Pyongyang'
tz: 'GMT+09:00', gmt: 'Asia/Seoul'
tz: 'GMT+09:00', gmt: 'Asia/Tokyo'
tz: 'GMT+09:00', gmt: 'Asia/Yakutsk'
tz: 'GMT+09:00', gmt: 'Etc/GMT-9'
tz: 'GMT+09:00', gmt: 'Pacific/Palau'
tz: 'GMT+09:30', gmt: 'Australia/Darwin'
tz: 'GMT+10:00', gmt: 'Antarctica/DumontDUrville'
tz: 'GMT+10:00', gmt: 'Asia/Ust-Nera'
tz: 'GMT+10:00', gmt: 'Asia/Vladivostok'
tz: 'GMT+10:00', gmt: 'Australia/Brisbane'
tz: 'GMT+10:00', gmt: 'Australia/Lindeman'
tz: 'GMT+10:00', gmt: 'Etc/GMT-10'
tz: 'GMT+10:00', gmt: 'Pacific/Chuuk'
tz: 'GMT+10:00', gmt: 'Pacific/Guam'
tz: 'GMT+10:00', gmt: 'Pacific/Port Moresby'
tz: 'GMT+10:00', gmt: 'Pacific/Saipan'
tz: 'GMT+10:30', gmt: 'Australia/Adelaide'
tz: 'GMT+10:30', gmt: 'Australia/Broken Hill'
tz: 'GMT+11:00', gmt: 'Antarctica/Casey'
tz: 'GMT+11:00', gmt: 'Antarctica/Macquarie'
tz: 'GMT+11:00', gmt: 'Asia/Magadan'
tz: 'GMT+11:00', gmt: 'Asia/Sakhalin'
tz: 'GMT+11:00', gmt: 'Asia/Srednekolymsk'
tz: 'GMT+11:00', gmt: 'Australia/Currie'
tz: 'GMT+11:00', gmt: 'Australia/Hobart'
tz: 'GMT+11:00', gmt: 'Australia/Lord Howe'
tz: 'GMT+11:00', gmt: 'Australia/Melbourne'
tz: 'GMT+11:00', gmt: 'Australia/Sydney'
tz: 'GMT+11:00', gmt: 'Etc/GMT-11'
tz: 'GMT+11:00', gmt: 'Pacific/Bougainville'
tz: 'GMT+11:00', gmt: 'Pacific/Efate'
tz: 'GMT+11:00', gmt: 'Pacific/Guadalcanal'
tz: 'GMT+11:00', gmt: 'Pacific/Kosrae'
tz: 'GMT+11:00', gmt: 'Pacific/Noumea'
tz: 'GMT+11:00', gmt: 'Pacific/Pohnpei'
tz: 'GMT+12:00', gmt: 'Asia/Anadyr'
tz: 'GMT+12:00', gmt: 'Asia/Kamchatka'
tz: 'GMT+12:00', gmt: 'Etc/GMT-12'
tz: 'GMT+12:00', gmt: 'Pacific/Fiji'
tz: 'GMT+12:00', gmt: 'Pacific/Funafuti'
tz: 'GMT+12:00', gmt: 'Pacific/Kwajalein'
tz: 'GMT+12:00', gmt: 'Pacific/Majuro'
tz: 'GMT+12:00', gmt: 'Pacific/Nauru'
tz: 'GMT+12:00', gmt: 'Pacific/Norfolk'
tz: 'GMT+12:00', gmt: 'Pacific/Tarawa'
tz: 'GMT+12:00', gmt: 'Pacific/Wake'
tz: 'GMT+12:00', gmt: 'Pacific/Wallis'
tz: 'GMT+13:00', gmt: 'Antarctica/McMurdo'
tz: 'GMT+13:00', gmt: 'Etc/GMT-13'
tz: 'GMT+13:00', gmt: 'Pacific/Auckland'
tz: 'GMT+13:00', gmt: 'Pacific/Enderbury'
tz: 'GMT+13:00', gmt: 'Pacific/Fakaofo'
tz: 'GMT+13:00', gmt: 'Pacific/Tongatapu'
tz: 'GMT+13:45', gmt: 'Pacific/Chatham'
tz: 'GMT+14:00', gmt: 'Etc/GMT-14'
tz: 'GMT+14:00', gmt: 'Pacific/Apia'
tz: 'GMT+14:00', gmt: 'Pacific/Kiritimati'
语言Language列表:注意传参时填code,如code: 'zh-CN' en: 'Chinese' nation: '中国 内地' 传参时填zh-CN
cc:'ad' code:'ca-ES' prefix:'ca' en:'Catalan' nation:'安道尔' lang:'加泰罗尼亚语'
cc:'af' code:'prs-AF' prefix:'prs' en:'Dari' nation:'阿富汗' lang:'达里语'
cc:'af' code:'ps-AF' prefix:'ps' en:'Pashto' nation:'阿富汗' lang:'普什图语'
cc:'al' code:'sq-AL' prefix:'sq' en:'Albanian' nation:'阿尔巴尼亚' lang:'阿尔巴尼亚语'
cc:'am' code:'hy-AM' prefix:'hy' en:'Armenian' nation:'亚美尼亚' lang:'亚美尼亚语'
cc:'ao' code:'pt-PT' prefix:'pt' en:'Portuguese' nation:'安哥拉' lang:'葡萄牙语'
cc:'aq' code:'en-US' prefix:'en' en:'English' nation:'南极洲' lang:'英语'
cc:'ar' code:'es-AR' prefix:'es' en:'Spanish' nation:'阿根廷' lang:'西班牙语'
cc:'as' code:'en-US' prefix:'en' en:'English' nation:'美属萨摩亚' lang:'英语'
cc:'at' code:'de-AT' prefix:'de' en:'German' nation:'奥地利' lang:'德语'
cc:'ag' code:'en-US' prefix:'en' en:'English' nation:'安提瓜和巴布达' lang:'英语'
cc:'ai' code:'en-US' prefix:'en' en:'English' nation:'安圭拉' lang:'英语'
cc:'ae' code:'ar-AE' prefix:'ar' en:'Arabic' nation:'阿联酋' lang:'阿拉伯语'
cc:'ax' code:'sv-SE' prefix:'sv' en:'Swedish' nation:'奥兰群岛' lang:'瑞典语'
cc:'ax' code:'fi-FI' prefix:'fi' en:'Finnish' nation:'奥兰群岛' lang:'芬兰语'
cc:'az' code:'az-Latn-AZ' prefix:'az' en:'Azerbaijani' nation:'阿塞拜疆' lang:'阿塞拜疆语'
cc:'az' code:'az-Cyrl-AZ' prefix:'az' en:'Azerbaijani' nation:'阿塞拜疆' lang:'阿塞拜疆语'
cc:'ba' code:'bs-BA' prefix:'bs' en:'Bosnian' nation:'波黑' lang:'波斯尼亚语'
cc:'ba' code:'hr-BA' prefix:'hr' en:'Croatian' nation:'波黑' lang:'克罗地亚语'
cc:'ba' code:'sr-BA' prefix:'sr' en:'Serbian' nation:'波黑' lang:'塞尔维亚语'
cc:'aw' code:'nl-NL' prefix:'nl' en:'Dutch' nation:'阿鲁巴' lang:'荷兰语'
cc:'bd' code:'bn-BD' prefix:'bn' en:'Bengali' nation:'孟加拉' lang:'孟加拉语'
cc:'au' code:'en-AU' prefix:'en' en:'English' nation:'澳大利亚' lang:'英语'
cc:'bf' code:'fr-FR' prefix:'fr' en:'French' nation:'布基纳法索' lang:'法语'
cc:'bg' code:'bg-BG' prefix:'bg' en:'Bulgarian' nation:'保加利亚' lang:'保加利亚语'
cc:'bh' code:'ar-BH' prefix:'ar' en:'Arabic' nation:'巴林' lang:'阿拉伯语'
cc:'bj' code:'fr-FR' prefix:'fr' en:'French' nation:'贝宁' lang:'法语'
cc:'bi' code:'fr-FR' prefix:'fr' en:'French' nation:'布隆迪' lang:'法语'
cc:'bi' code:'en-US' prefix:'en' en:'English' nation:'布隆迪' lang:'英语'
cc:'bm' code:'en-US' prefix:'en' en:'English' nation:'百慕大' lang:'英语'
cc:'bl' code:'fr-FR' prefix:'fr' en:'French' nation:'圣巴泰勒米岛' lang:'法语'
cc:'bb' code:'en-US' prefix:'en' en:'English' nation:'巴巴多斯' lang:'英语'
cc:'bo' code:'quz-BO' prefix:'quz' en:'Quechua' nation:'玻利维亚' lang:'克丘亚语'
cc:'be' code:'fr-BE' prefix:'fr' en:'French' nation:'比利时' lang:'法语'
cc:'bq' code:'nl-NL' prefix:'nl' en:'Dutch' nation:'荷兰加勒比区' lang:'荷兰语'
cc:'br' code:'pt-BR' prefix:'pt' en:'Portuguese' nation:'巴西' lang:'葡萄牙语'
cc:'bs' code:'en-US' prefix:'en' en:'English' nation:'巴哈马' lang:'英语'
cc:'bt' code:'en-US' prefix:'en' en:'English' nation:'不丹' lang:'英语'
cc:'bv' code:'' prefix:'' nation:'布韦岛' lang:''
cc:'bw' code:'tn-ZA' prefix:'tn' en:'Tswana' nation:'博茨瓦纳' lang:'茨瓦纳语'
cc:'by' code:'be-BY' prefix:'be' en:'Belarus' nation:'白俄罗斯' lang:'白俄罗斯语'
cc:'bz' code:'en-BZ' prefix:'en' en:'English' nation:'伯利兹' lang:'英语'
cc:'ca' code:'fr-CA' prefix:'fr' en:'French' nation:'加拿大' lang:'法语'
cc:'cc' code:'' prefix:'' nation:'科科斯群岛' lang:''
cc:'bn' code:'ms-BN' prefix:'ms' en:'Malay' nation:'文莱' lang:'马来语'
cc:'cf' code:'fr-FR' prefix:'fr' en:'French' nation:'中非' lang:'法语'
cc:'cl' code:'arn-CL' prefix:'arn' en:'Mapdangan' nation:'智利' lang:'马普丹冈语'
cc:'cm' code:'fr-FR' prefix:'fr' en:'French' nation:'喀麦隆' lang:'法语'
cc:'cm' code:'en-US' prefix:'en' en:'English' nation:'喀麦隆' lang:'英语'
cc:'co' code:'es-CO' prefix:'es' en:'Spanish' nation:'哥伦比亚' lang:'西班牙语'
cc:'cr' code:'es-CR' prefix:'es' en:'Spanish' nation:'哥斯达黎加' lang:'西班牙语'
cc:'cv' code:'pt-PT' prefix:'pt' en:'Portuguese' nation:'佛得角' lang:'葡萄牙语'
cc:'cu' code:'es-ES' prefix:'es' en:'Spanish' nation:'古巴' lang:'西班牙语'
cc:'cx' code:'en-US' prefix:'en' en:'English' nation:'圣诞岛' lang:'英语'
cc:'cy' code:'el-GR' prefix:'el' en:'Greek' nation:'塞浦路斯' lang:'希腊语'
cc:'cy' code:'tr-TR' prefix:'tr' en:'Turkish' nation:'塞浦路斯' lang:'土耳其语'
cc:'cz' code:'cs-CZ' prefix:'cs' en:'Czech' nation:'捷克' lang:'捷克语'
cc:'de' code:'de-DE' prefix:'de' en:'German' nation:'德国' lang:'德语'
cc:'dj' code:'fr-FR' prefix:'fr' en:'French' nation:'吉布提' lang:'法语'
cc:'dj' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'吉布提' lang:'阿拉伯语'
cc:'dk' code:'da-DK' prefix:'da' en:'Danish' nation:'丹麦' lang:'丹麦语'
cc:'dm' code:'en-US' prefix:'en' en:'English' nation:'多米尼克' lang:'英语'
cc:'do' code:'es-DO' prefix:'es' en:'Spanish' nation:'多米尼加' lang:'西班牙语'
cc:'dz' code:'ar-DZ' prefix:'ar' en:'Arabic' nation:'阿尔及利亚' lang:'阿拉伯语'
cc:'ec' code:'quz-EC' prefix:'quz' en:'Quechua' nation:'厄瓜多尔' lang:'克丘亚语'
cc:'ee' code:'et-EE' prefix:'et' en:'Estonian' nation:'爱沙尼亚' lang:'爱沙尼亚语'
cc:'eh' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'西撒哈拉' lang:'阿拉伯语'
cc:'er' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'厄立特里亚' lang:'阿拉伯语'
cc:'er' code:'en-US' prefix:'en' en:'English' nation:'厄立特里亚' lang:'英语'
cc:'es' code:'es-ES' prefix:'es' en:'Spanish' nation:'西班牙' lang:'西班牙语'
cc:'eg' code:'ar-EG' prefix:'ar' en:'Arabic' nation:'埃及' lang:'阿拉伯语'
cc:'fi' code:'se-FI' prefix:'se' en:'Northern Sami' nation:'芬兰' lang:'北萨米语'
cc:'fj' code:'en-US' prefix:'en' en:'English' nation:'斐济群岛' lang:'英语'
cc:'fk' code:'es-ES' prefix:'es' en:'Spanish' nation:'马尔维纳斯群岛(福克兰)' lang:'西班牙语'
cc:'fk' code:'en-US' prefix:'en' en:'English' nation:'马尔维纳斯群岛(福克兰)' lang:'英语'
cc:'ch' code:'de-CH' prefix:'de' en:'German' nation:'瑞士' lang:'德语'
cc:'fo' code:'fo-FO' prefix:'fo' en:'Faroese' nation:'法罗群岛' lang:'法罗语'
cc:'fr' code:'fr-FR' prefix:'fr' en:'French' nation:'法国' lang:'法语'
cc:'fm' code:'en-US' prefix:'en' en:'English' nation:'密克罗尼西亚联邦' lang:'英语'
cc:'ga' code:'fr-FR' prefix:'fr' en:'French' nation:'加蓬' lang:'法语'
cc:'gd' code:'en-US' prefix:'en' en:'English' nation:'格林纳达' lang:'英语'
cc:'ge' code:'ka-GE' prefix:'ka' en:'Georgian' nation:'格鲁吉亚' lang:'格鲁吉亚语'
cc:'gf' code:'fr-FR' prefix:'fr' en:'French' nation:'法属圭亚那' lang:'法语'
cc:'gh' code:'en-US' prefix:'en' en:'English' nation:'加纳' lang:'英语'
cc:'gi' code:'en-US' prefix:'en' en:'English' nation:'直布罗陀' lang:'英语'
cc:'gl' code:'kl-GL' prefix:'kl' en:'Greenland' nation:'格陵兰' lang:'格陵兰语'
cc:'gn' code:'fr-FR' prefix:'fr' en:'French' nation:'几内亚' lang:'法语'
cc:'gp' code:'fr-FR' prefix:'fr' en:'French' nation:'瓜德罗普' lang:'法语'
cc:'gq' code:'es-ES' prefix:'es' en:'Spanish' nation:'赤道几内亚' lang:'西班牙语'
cc:'gq' code:'fr-FR' prefix:'fr' en:'French' nation:'赤道几内亚' lang:'法语'
cc:'gq' code:'pt-PT' prefix:'pt' en:'Portuguese' nation:'赤道几内亚' lang:'葡萄牙语'
cc:'gr' code:'el-GR' prefix:'el' en:'Greek' nation:'希腊' lang:'希腊语'
cc:'gs' code:'en-US' prefix:'en' en:'English' nation:'南乔治亚岛和南桑威奇群岛' lang:'英语'
cc:'gt' code:'qut-GT' prefix:'qut' en:'Keeche' nation:'危地马拉' lang:'基切语'
cc:'gu' code:'en-US' prefix:'en' en:'English' nation:'关岛' lang:'英语'
cc:'gw' code:'pt-PT' prefix:'pt' en:'Portuguese' nation:'几内亚比绍' lang:'葡萄牙语'
cc:'gy' code:'en-US' prefix:'en' en:'English' nation:'圭亚那' lang:'英语'
cc:'hk' code:'zh-HK' prefix:'zh' en:'Chinese' nation:'中国香港' lang:'中文'
cc:'hm' code:'' prefix:'' nation:'赫德岛和麦克唐纳群岛' lang:''
cc:'hn' code:'es-HN' prefix:'es' en:'Spanish' nation:'洪都拉斯' lang:'西班牙语'
cc:'hr' code:'hr-HR' prefix:'hr' en:'Croatian' nation:'克罗地亚' lang:'克罗地亚语'
cc:'hu' code:'hu-HU' prefix:'hu' en:'Hungarian' nation:'匈牙利' lang:'匈牙利语'
cc:'il' code:'he-IL' prefix:'he' en:'Hebrew' nation:'以色列' lang:'希伯来语'
cc:'ie' code:'ga-IE' prefix:'ga' en:'Irish' nation:'爱尔兰' lang:'爱尔兰语'
cc:'id' code:'id-ID' prefix:'id' en:'Indonesian' nation:'印尼' lang:'印度尼西亚语'
cc:'ht' code:'fr-FR' prefix:'fr' en:'French' nation:'海地' lang:'法语'
cc:'im' code:'en-US' prefix:'en' en:'English' nation:'马恩岛' lang:'英语'
cc:'io' code:'en-GB' prefix:'en' en:'English' nation:'英属印度洋领地' lang:'英语'
cc:'in' code:'hi-IN' prefix:'hi' en:'Hindi' nation:'印度' lang:'印地语'
cc:'is' code:'is-IS' prefix:'is' en:'Island' nation:'冰岛' lang:'冰岛语'
cc:'ir' code:'fa-IR' prefix:'fa' en:'Persian' nation:'伊朗' lang:'波斯语'
cc:'iq' code:'ar-IQ' prefix:'ar' en:'Arabic' nation:'伊拉克' lang:'阿拉伯语'
cc:'it' code:'it-IT' prefix:'it' en:'Italian' nation:'意大利' lang:'意大利语'
cc:'je' code:'en-US' prefix:'en' en:'English' nation:'泽西岛' lang:'英语'
cc:'je' code:'fr-FR' prefix:'fr' en:'French' nation:'泽西岛' lang:'法语'
cc:'jm' code:'en-JM' prefix:'en' en:'English' nation:'牙买加' lang:'英语'
cc:'jo' code:'ar-JO' prefix:'ar' en:'Arabic' nation:'约旦' lang:'阿拉伯语'
cc:'jp' code:'ja-JP' prefix:'ja' en:'Japanese' nation:'日本' lang:'日语'
cc:'kh' code:'km-KH' prefix:'km' en:'Khmer' nation:'柬埔寨' lang:'高棉语'
cc:'ki' code:'en-US' prefix:'en' en:'English' nation:'基里巴斯' lang:'英语'
cc:'km' code:'fr-FR' prefix:'fr' en:'French' nation:'科摩罗' lang:'法语'
cc:'km' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'科摩罗' lang:'阿拉伯语'
cc:'kw' code:'ar-KW' prefix:'ar' en:'Arabic Language' nation:'科威特' lang:'阿拉伯语'
cc:'ky' code:'en-US' prefix:'en' en:'English' nation:'开曼群岛' lang:'英语'
cc:'li' code:'de-LI' prefix:'de' en:'German' nation:'列支敦士登' lang:'德语'
cc:'lk' code:'si-LK' prefix:'si' en:'Sinhala' nation:'斯里兰卡' lang:'僧伽罗语'
cc:'lb' code:'ar-LB' prefix:'ar' en:'Arabic' nation:'黎巴嫩' lang:'阿拉伯语'
cc:'lt' code:'lt-LT' prefix:'lt' en:'Lithuanian' nation:'立陶宛' lang:'立陶宛语'
cc:'lu' code:'de-LU' prefix:'de' en:'German' nation:'卢森堡' lang:'德语'
cc:'lr' code:'en-US' prefix:'en' en:'English' nation:'利比里亚' lang:'英语'
cc:'lv' code:'lv-LV' prefix:'lv' en:'Latvian' nation:'拉脱维亚' lang:'拉脱维亚语'
cc:'ly' code:'ar-LY' prefix:'ar' en:'Arabic' nation:'利比亚' lang:'阿拉伯语'
cc:'ma' code:'ar-MA' prefix:'ar' en:'Arabic' nation:'摩洛哥' lang:'阿拉伯语'
cc:'mc' code:'fr-MC' prefix:'fr' en:'French' nation:'摩纳哥' lang:'法语'
cc:'md' code:'ro-RO' prefix:'ro' en:'Romanian' nation:'摩尔多瓦' lang:'罗马尼亚语'
cc:'me' code:'sr-Latn-ME' prefix:'sr' en:'Serbian' nation:'黑山' lang:'塞尔维亚语'
cc:'mf' code:'fr-FR' prefix:'fr' en:'French' nation:'法属圣马丁' lang:'法语'
cc:'mg' code:'fr-FR' prefix:'fr' en:'French' nation:'马达加斯加' lang:'法语'
cc:'mh' code:'en-US' prefix:'en' en:'English' nation:'马绍尔群岛' lang:'英语'
cc:'ls' code:'en-US' prefix:'en' en:'English' nation:'莱索托' lang:'英语'
cc:'mk' code:'mk-MK' prefix:'mk' en:'Macedonian' nation:'马其顿' lang:'马其顿语'
cc:'mq' code:'fr-FR' prefix:'fr' en:'French' nation:'马提尼克' lang:'法语'
cc:'mr' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'毛里塔尼亚' lang:'阿拉伯语'
cc:'ms' code:'en-US' prefix:'en' en:'English' nation:'蒙塞拉特岛' lang:'英语'
cc:'mt' code:'mt-MT' prefix:'mt' en:'Maltese' nation:'马耳他' lang:'马耳他语'
cc:'mv' code:'dv-MV' prefix:'dv' en:'Dhivehi' nation:'马尔代夫' lang:'迪维希语'
cc:'mw' code:'en-US' prefix:'en' en:'English' nation:'马拉维' lang:'英语'
cc:'mx' code:'es-MX' prefix:'es' en:'Spanish' nation:'墨西哥' lang:'西班牙语'
cc:'ml' code:'fr-FR' prefix:'fr' en:'French' nation:'马里' lang:'法语'
cc:'my' code:'ms-MY' prefix:'ms' en:'Malay' nation:'马来西亚' lang:'马来语'
cc:'na' code:'en-US' prefix:'en' en:'English' nation:'纳米比亚' lang:'英语'
cc:'ne' code:'fr-FR' prefix:'fr' en:'French' nation:'尼日尔' lang:'法语'
cc:'nf' code:'en-US' prefix:'en' en:'English' nation:'诺福克岛' lang:'英语'
cc:'ng' code:'ha-Latn-NG' prefix:'ha' en:'Hausa' nation:'尼日利亚' lang:'豪撒语'
cc:'ni' code:'es-NI' prefix:'es' en:'Spain' nation:'尼加拉瓜' lang:'西班牙语'
cc:'nl' code:'fy-NL' prefix:'fy' en:'Frisian' nation:'荷兰' lang:'弗里西亚语'
cc:'no' code:'se-NO' prefix:'se' en:'Northern Sami' nation:'挪威' lang:'北萨米语'
cc:'np' code:'ne-NP' prefix:'ne' en:'Nepal' nation:'尼泊尔' lang:'尼泊尔语'
cc:'nr' code:'en-US' prefix:'en' en:'English' nation:'瑙鲁' lang:'英语'
cc:'om' code:'ar-OM' prefix:'ar' en:'Arabic' nation:'阿曼' lang:'阿拉伯语'
cc:'pa' code:'es-PA' prefix:'es' en:'Spanish' nation:'巴拿马' lang:'西班牙语'
cc:'pe' code:'quz-PE' prefix:'quz' en:'Quechua' nation:'秘鲁' lang:'克丘亚语'
cc:'mm' code:'' prefix:'' nation:'缅甸' lang:''
cc:'pf' code:'fr-FR' prefix:'fr' en:'French' nation:'法属波利尼西亚' lang:'法语'
cc:'mo' code:'zh-MO' prefix:'zh' en:'Chinese' nation:'中国澳门' lang:'中文'
cc:'ph' code:'fil-PH' prefix:'fil' en:'Philippine' nation:'菲律宾' lang:'菲律宾语'
cc:'pg' code:'en-US' prefix:'en' en:'English' nation:'巴布亚新几内亚' lang:'英语'
cc:'pl' code:'pl-PL' prefix:'pl' en:'Polish' nation:'波兰' lang:'波兰语'
cc:'pk' code:'ur-PK' prefix:'ur' en:'Urdu' nation:'巴基斯坦' lang:'乌尔都语'
cc:'ps' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'巴勒斯坦' lang:'阿拉伯语'
cc:'pr' code:'es-PR' prefix:'es' en:'Spain Language' nation:'波多黎各' lang:'西班牙语'
cc:'pn' code:'en-US' prefix:'en' en:'English' nation:'皮特凯恩群岛' lang:'英语'
cc:'pw' code:'en-US' prefix:'en' en:'English' nation:'帕劳' lang:'英语'
cc:'qa' code:'ar-QA' prefix:'ar' en:'Arabic' nation:'卡塔尔' lang:'阿拉伯语'
cc:'ro' code:'ro-RO' prefix:'ro' en:'Romanian' nation:'罗马尼亚' lang:'罗马尼亚语'
cc:'re' code:'fr-FR' prefix:'fr' en:'French' nation:'留尼汪' lang:'法语'
cc:'rs' code:'sr-Latn-RS' prefix:'sr' en:'Serbian' nation:'塞尔维亚' lang:'塞尔维亚语'
cc:'py' code:'es-PY' prefix:'es' en:'Spanish' nation:'巴拉圭' lang:'西班牙语'
cc:'ru' code:'ru-RU' prefix:'ru' en:'Russian' nation:'俄罗斯' lang:'俄语'
cc:'sb' code:'en-US' prefix:'en' en:'English' nation:'所罗门群岛' lang:'英语'
cc:'se' code:'se-SE' prefix:'se' en:'Northern Sami' nation:'瑞典' lang:'北萨米语'
cc:'sc' code:'fr-FR' prefix:'fr' en:'French' nation:'塞舌尔' lang:'法语'
cc:'sc' code:'en-US' prefix:'en' en:'English' nation:'塞舌尔' lang:'英语'
cc:'sg' code:'en-SG' prefix:'en' en:'English' nation:'新加坡' lang:'英语'
cc:'sd' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'苏丹' lang:'阿拉伯语'
cc:'sd' code:'en-US' prefix:'en' en:'English' nation:'苏丹' lang:'英语'
cc:'si' code:'sl-SI' prefix:'sl' en:'Slovenian' nation:'斯洛文尼亚' lang:'斯洛文尼亚语'
cc:'sj' code:'nn-no' prefix:'no' en:'Norwegian' nation:'斯瓦尔巴群岛和扬马延岛' lang:'挪威语'
cc:'sk' code:'sk-SK' prefix:'sk' en:'Slovak' nation:'斯洛伐克' lang:'斯洛伐克语'
cc:'sl' code:'en-US' prefix:'en' en:'English' nation:'塞拉利昂' lang:'英语'
cc:'sm' code:'it-IT' prefix:'it' en:'Italian' nation:'圣马力诺' lang:'意大利语'
cc:'sn' code:'wo-SN' prefix:'wo' en:'Wolof' nation:'塞内加尔' lang:'沃洛夫语'
cc:'so' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'索马里' lang:'阿拉伯语'
cc:'sr' code:'nl-NL' prefix:'nl' en:'Dutch' nation:'苏里南' lang:'荷兰语'
cc:'ss' code:'en-US' prefix:'en' en:'English' nation:'南苏丹' lang:'英语'
cc:'st' code:'en-US' prefix:'en' en:'English' nation:'圣多美和普林西比' lang:'英语'
cc:'sv' code:'es-SV' prefix:'es' en:'Spanish' nation:'萨尔瓦多' lang:'西班牙语'
cc:'sy' code:'ar-SY' prefix:'ar' en:'Arabic' nation:'叙利亚' lang:'阿拉伯语'
cc:'sz' code:'en-US' prefix:'en' en:'English' nation:'斯威士兰' lang:'英语'
cc:'tc' code:'en-US' prefix:'en' en:'English' nation:'特克斯和凯科斯群岛' lang:'英语'
cc:'tg' code:'fr-FR' prefix:'fr' en:'French' nation:'多哥' lang:'法语'
cc:'td' code:'fr-FR' prefix:'fr' en:'French' nation:'乍得' lang:'法语'
cc:'td' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'乍得' lang:'阿拉伯语'
cc:'th' code:'th-TH' prefix:'ta' en:'Thai' nation:'泰国' lang:'泰语'
cc:'tk' code:'en-US' prefix:'en' en:'English' nation:'托克劳' lang:'英语'
cc:'tl' code:'pt-PT' prefix:'pt' en:'Portuguese' nation:'东帝汶' lang:'葡萄牙语'
cc:'tn' code:'ar-TN' prefix:'ar' en:'Arabic' nation:'突尼斯' lang:'阿拉伯语'
cc:'tr' code:'tr-TR' prefix:'tr' en:'Turkish' nation:'土耳其' lang:'土耳其语'
cc:'to' code:'en-US' prefix:'en' en:'English' nation:'汤加' lang:'英语'
cc:'tz' code:'sw-KE' prefix:'sw' en:'Swah Greek' nation:'坦桑尼亚' lang:'斯瓦希里语'
cc:'tz' code:'en-US' prefix:'en' en:'English' nation:'坦桑尼亚' lang:'英语'
cc:'ua' code:'uk-UA' prefix:'uk' en:'Ukrainian' nation:'乌克兰' lang:'乌克兰语'
cc:'uy' code:'es-UY' prefix:'es' en:'Spanish' nation:'乌拉圭' lang:'西班牙语'
cc:'ug' code:'sw-KE' prefix:'sw' en:'Swah Greek' nation:'乌干达' lang:'斯瓦希里语'
cc:'ug' code:'en-US' prefix:'en' en:'English' nation:'乌干达' lang:'英语'
cc:'us' code:'en-US' prefix:'en' en:'English' nation:'美国' lang:'英语'
cc:'va' code:'it-IT' prefix:'it' en:'Italian' nation:'梵蒂冈' lang:'意大利语'
cc:'vi' code:'en-US' prefix:'en' en:'English' nation:'美属维尔京群岛' lang:'英语'
cc:'ve' code:'es-VE' prefix:'es' en:'Spanish' nation:'委内瑞拉' lang:'西班牙语'
cc:'ws' code:'en-US' prefix:'en' en:'English' nation:'萨摩亚' lang:'英语'
cc:'vn' code:'vi-VN' prefix:'vi' en:'Vietnamese' nation:'越南' lang:'越南语'
cc:'vg' code:'en-GB' prefix:'en' en:'English' nation:'英属维尔京群岛' lang:'英语'
cc:'yt' code:'fr-FR' prefix:'fr' en:'French' nation:'马约特' lang:'法语'
cc:'ye' code:'ar-YE' prefix:'ar' en:'Arabic' nation:'也门' lang:'阿拉伯语'
cc:'wf' code:'fr-FR' prefix:'fr' en:'French' nation:'瓦利斯和富图纳' lang:'法语'
cc:'zw' code:'en-ZW' prefix:'en' en:'English' nation:'津巴布韦' lang:'英语'
cc:'za' code:'nso-ZA' prefix:'nso' en:'Basotho' nation:'南非' lang:'巴索托语'
cc:'zm' code:'en-US' prefix:'en' en:'English' nation:'赞比亚' lang:'英语'
cc:'cn' code:'zh-CN' prefix:'zh' en:'Chinese' nation:'中国内地' lang:'中文'
cc:'cd' code:'fr-FR' prefix:'fr' en:'French' nation:'刚果(金)' lang:'法语'
cc:'mz' code:'pt-PT' prefix:'pt' en:'Portuguese' nation:'莫桑比克' lang:'葡萄牙语'
cc:'cg' code:'fr-FR' prefix:'fr' en:'French' nation:'刚果(布)' lang:'法语'
cc:'gg' code:'en-US' prefix:'en' en:'English' nation:'根西岛' lang:'英语'
cc:'gm' code:'en-US' prefix:'en' en:'English' nation:'冈比亚' lang:'英语'
cc:'mp' code:'en-US' prefix:'en' en:'English' nation:'北马里亚纳群岛' lang:'英语'
cc:'et' code:'am-ET' prefix:'am' en:'Amharic' nation:'埃塞俄比亚' lang:'阿姆哈拉语'
cc:'tf' code:'fr-FR' prefix:'fr' en:'French' nation:'法属南部领地' lang:'法语'
cc:'vu' code:'fr-FR' prefix:'fr' en:'French' nation:'瓦努阿图' lang:'法语'
cc:'vu' code:'en-US' prefix:'en' en:'English' nation:'瓦努阿图' lang:'英语'
cc:'nc' code:'fr-FR' prefix:'fr' en:'French' nation:'新喀里多尼亚' lang:'法语'
cc:'um' code:'en-US' prefix:'en' en:'English' nation:'美国本土外小岛屿' lang:'英语'
cc:'nu' code:'en-US' prefix:'en' en:'English' nation:'纽埃' lang:'英语'
cc:'tt' code:'en-TT' prefix:'en' en:'English' nation:'特立尼达和多巴哥' lang:'英语'
cc:'vc' code:'en-US' prefix:'en' en:'English' nation:'圣文森特和格林纳丁斯' lang:'英语'
cc:'ck' code:'en-US' prefix:'en' en:'English' nation:'库克群岛' lang:'英语'
cc:'uk' code:'en-GB' prefix:'en' en:'English' nation:'英国' lang:'英语'
cc:'tv' code:'en-US' prefix:'en' en:'English' nation:'图瓦卢' lang:'英语'
cc:'tw' code:'zh-TW' prefix:'zh' en:'Chinese (Traditional)' nation:'中国台湾' lang:'中文(繁体)'
cc:'nz' code:'en-NZ' prefix:'en' en:'English' nation:'新西兰' lang:'英语'
cc:'nz' code:'mi-NZ' prefix:'mi' en:'Maori' nation:'新西兰' lang:'毛利语'
cc:'sa' code:'ar-SA' prefix:'ar' en:'Arabic' nation:'沙特阿拉伯' lang:'阿拉伯语'
cc:'kr' code:'ko-KR' prefix:'ko' en:'North Korea' nation:'韩国' lang:'朝鲜语'
cc:'kp' code:'ko-KR' prefix:'ko' en:'North Korea' nation:'朝鲜' lang:'朝鲜语'
cc:'la' code:'lo-LA' prefix:'lo' en:'Lao' nation:'老挝' lang:'老挝语'
cc:'kg' code:'ky-KG' prefix:'ky' en:'Kyrgyz' nation:'吉尔吉斯斯坦' lang:'吉尔吉斯语'
cc:'pt' code:'pt-PT' prefix:'pt' en:'Portuguese' nation:'葡萄牙' lang:'葡萄牙语'
cc:'kz' code:'kk-KZ' prefix:'kk' en:'Kazakh' nation:'哈萨克斯坦' lang:'哈萨克语'
cc:'tj' code:'tg-Cyrl-TJ' prefix:'tg' en:'Tajik Language' nation:'塔吉克斯坦' lang:'塔吉克语'
cc:'tm' code:'tk-TM' prefix:'tk' en:'Turkmen' nation:'土库曼斯坦' lang:'土库曼语'
cc:'uz' code:'uz-Latn-UZ' prefix:'uz' en:'Uzbek' nation:'乌兹别克斯坦' lang:'乌兹别克语'
cc:'sh' code:'en-US' prefix:'en' en:'English' nation:'圣赫勒拿' lang:'英语'
cc:'pm' code:'fr-FR' prefix:'fr' en:'French' nation:'圣皮埃尔和密克隆' lang:'法语'
cc:'kn' code:'en-US' prefix:'en' en:'English' nation:'圣基茨和尼维斯' lang:'英语'
cc:'lc' code:'en-US' prefix:'en' en:'English' nation:'圣卢西亚' lang:'英语'
cc:'lc' code:'fr-FR' prefix:'fr' en:'French' nation:'圣卢西亚' lang:'法语'
cc:'ci' code:'fr-FR' prefix:'fr' en:'French' nation:'科特迪瓦' lang:'法语'
cc:'mu' code:'en-US' prefix:'en' en:'English' nation:'毛里求斯' lang:'英语'
cc:'ke' code:'sw-KE' prefix:'sw' en:'Swah Greek' nation:'肯尼亚' lang:'斯瓦希里语'
cc:'mn' code:'mn-Mong' prefix:'mn' en:'Mongolian' nation:'蒙古国蒙古' lang:'蒙古语'
cc:'rw' code:'rw-RW' prefix:'rw' en:'Rwanda' nation:'卢旺达' lang:'卢旺达语'
字体列表:注意传参时直接填字体名称,如Calibri
Arial
Calibri
Cambria
Cambria Math
Candara
Comic Sans MS
Comic Sans MS Bold
Comic Sans
Consolas
Constantia
Corbel
Courier New
Caurier Regular
Ebrima
Fixedsys Regular
Franklin Gothic
Gabriola Regular
Gadugi
Georgia
HoloLens MDL2 Assets Regular
Impact Regular
Javanese Text Regular
Leelawadee UI
Lucida Console Regular
Lucida Sans Unicode Regular
Malgun Gothic
Microsoft Himalaya Regular
Microsoft JhengHei
Microsoft JhengHei UI
Microsoft PhangsPa
Microsoft Sans Serif Regular
Microsoft Tai Le
Microsoft YaHei
Microsoft YaHei UI
Microsoft Yi Baiti Regular
MingLiU_HKSCS-ExtB Regular
MingLiu-ExtB Regular
Modern Regular
Mongolia Baiti Regular
MS Gothic Regular
MS PGothic Regular
MS Sans Serif Regular
MS Serif Regular
MS UI Gothic Regular
MV Boli Regular
Myanmar Text
Nimarla UI
MV Boli Regular
Myanmar Tet
Nirmala UI
NSimSun Regular
Palatino Linotype
PMingLiU-ExtB Regular
Roman Regular
Script Regular
Segoe MDL2 Assets Regular
Segoe Print
Segoe Script
Segoe UI
Segoe UI Emoji Regular
Segoe UI Historic Regular
Segoe UI Symbol Regular
SimSun Regular
SimSun-ExtB Regular
Sitka Banner
Sitka Display
Sitka Heading
Sitka Small
Sitka Subheading
Sitka Text
Small Fonts Regular
Sylfaen Regular
Symbol Regular
System Bold
Tahoma
Terminal
Times New Roman
Trebuchet MS
Verdana
Webdings Regular
Wingdings Regular
Yu Gothic
Yu Gothic UI
Arial
Arial Black
Calibri
Calibri Light
Cambria
Cambria Math
Candara
Comic Sans MS
Consolas
Constantia
Corbel
Courier
Courier New
Ebrima
Fixedsys
Franklin Gothic Medium
Gabriola
Gadugi
Georgia
HoloLens MDL2 Assets
Impact
Javanese Text
Leelawadee UI
Leelawadee UI Semilight
Lucida Console
Lucida Sans Unicode
MS Gothic
MS PGothic
MS Sans Serif
MS Serif
MS UI Gothic
MV Boli
Malgun Gothic
Malgun Gothic Semilight
Marlett
Microsoft Himalaya
Microsoft JhengHei
Microsoft JhengHei Light
Microsoft JhengHei UI
Microsoft JhengHei UI Light
Microsoft New Tai Lue
Microsoft PhagsPa
Microsoft Sans Serif
Microsoft Tai Le
Microsoft YaHei
Microsoft YaHei Light
Microsoft YaHei UI
Microsoft YaHei UI Light
Microsoft Yi Baiti
MingLiU-ExtB
MingLiU_HKSCS-ExtB
Modern
Mongolian Baiti
Myanmar Text
NSimSun
Nirmala UI
Nirmala UI Semilight
PMingLiU-ExtB
Palatino Linotype
Roman
Script
Segoe MDL2 Assets
Segoe Print
Segoe Script
Segoe UI
Segoe UI Black
Segoe UI Emoji
Segoe UI Historic
Segoe UI Light
Segoe UI Semibold
Segoe UI Semilight
Segoe UI Symbol
SimSun
SimSun-ExtB
Sitka Banner
Sitka Display
Sitka Heading
Sitka Small
Sitka Subheading
Sitka Text
Small Fonts
Sylfaen
Symbol
System
Tahoma
Terminal
Times New Roman
Trebuchet MS
Verdana
Webdings
Wingdings
Yu Gothic
Yu Gothic Light
Yu Gothic Medium
Yu Gothic UI
Yu Gothic UI Light
Yu Gothic UI Semibold
Yu Gothic UI Semilight
脚本代码的样例,这里提供了python、Javascript和Java的编写样本
import requests,time
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import sys
ads_id = "XXX"
open_url = "http://local.adspower.net:50325/api/v1/browser/start?user_id=" + ads_id
close_url = "http://local.adspower.net:50325/api/v1/browser/stop?user_id=" + ads_id
resp = requests.get(open_url).json()
if resp["code"] != 0:
print(resp["msg"])
print("please check ads_id")
sys.exit()
chrome_driver = resp["data"]["webdriver"]
chrome_options = Options()
chrome_options.add_experimental_option("debuggerAddress", resp["data"]["ws"]["selenium"])
driver = webdriver.Chrome(chrome_driver, options=chrome_options)
print(driver.title)
driver.get("https://www.baidu.com")
time.sleep(5)
driver.quit()
requests.get(close_url)
const axios = require('axios');
const puppeteer = require('puppeteer-core');
axios.get('http://local.adspower.net:50325/api/v1/browser/start?user_id=XXX').then(async (res) => {
console.log(res.data);
if(res.data.code === 0 && res.data.data.ws && res.data.data.ws.puppeteer) {
try{
const browser = await puppeteer.connect(
{browserWSEndpoint: res.data.data.ws.puppeteer, defaultViewport:null});
const page = await browser.newPage();
await page.goto('https://www.adspower.io');
await page.screenshot({ path: './adspower.png' });
await browser.close();
} catch(err){
console.log(err.message);
}
}
}).catch((err) => {
console.log(err)
})
public class AdsDemo {
WebDriver driver;
private WebDriver getDriver() {
JSONObject result=adsPowerLocalAPI("http://local.adspower.net:50325/api/v1/browser/start?user_id=xxxx");
System.setProperty("webdriver.chrome.driver", result.getByPath("data.webdriver")); //设置API返回的webdriver
ChromeOptions options = new ChromeOptions();
options.setExperimentalOption("debuggerAddress",result.getByPath("data.ws.selenium")); //设置API返回的chrome调试接口
driver = new ChromeDriver(options);
driver.get("http://www.baidu.com");
return driver;
}
}