Scrape API 使用文档
阅读目录
最后更新日期:2024年8月8日
此文档适用于开发者,供开发者高效、便捷的对接数据并快速对接API
接口名称
Amazon页面采集Api
接口描述
用于采集Amazon前台任意页面,并支持指定邮编进行采集,以获得与Amazon呈现给消费者一致的页面数据。
接口通过异步的方式返回数据,开发者需部署简单的接收数据的Http服务,我们将采集结果以Http请求的方式推送给您,文末有Java Springboot版接收服务的代码,请参考。
请求 URL
http://scrape.pangolinfo.com/api/task/receive/v1
请求方法
POST
参数
Query请求参数
参数名 | 参数类型 | 参数说明 |
---|---|---|
token | String | 用户信息认证,请联系管理员获取 |
请求Body
{
"url":"https://www.amazon.com/s?k=baby", //必填,要爬取的亚马逊页面url
"callbackUrl":"http://xxx/xxx", //必填,开发者接收数据的服务地址(爬取成功后,将会把页面数据推送到该地址的服务上)
"proxySession":"0502f0d18e034e72bd14b026a3964f54",//32位uuid用于指定特定的IP采集,IP可在当天保持,0点后失效
"callbackHeaders":"k1:v1|k2:v2",//非必填,回调时,附带在请求头上的数据,value值请正确编码
"bizContext":{//非必填
"zipcode":"90001" //亚马逊邮编信息(非必填),示例是美国洛杉矶邮编
}
}
注意:目前支持如下邮编
美国站:
"10041", "90001", "60601", "84104"
德国站:
"80331", "10115", "20095", "60306"
英国站:
"W1S 3AS", "EH15 1LR", "M13 9PL", "M2 5BQ"
日本站:
"100-0004", "060-8588", "163-8001", "900-8570"
法国站:
"75000", "69001", "06000", "13000"
意大利站:
"20019", "50121", "00042", "30100"
西班牙站:
"41001", "28001", "08001", "46001"
加拿大站:
"M4C 4Y4", "V6E 1N2", "H3G 2K8", "T2R 0G5"
响应参数:
{
"code":0, //系统状态码
"message":"ok",
"data":{
"data":"57b049c3fdf24e309043f28139b44d05", //返回爬虫任务ID,爬取成功后会将此ID+页面数据推送到接收服务上
"bizCode":0, //业务状态码
"bizMsg":"ok" //业务状态信息
}
}
错误码
1001
- 含义:参数为空 / 参数不正确
- 解决方案:检查请求参数是否正确
1004
- 含义:访问被拒绝 / Token 不正确 / 超出体验次数
- 解决方案:请检查Token
示例请求
1、Curl 示例
# 请求
curl --location 'http://scrape.pangolinfo.com/api/task/receive/v1?token=xxx' \
--header 'Content-Type: application/json' \
--data '{"url":"https://www.amazon.com/s?k=baby","callbackUrl":"http://***.***.***.***/callback/data","bizContext":{"zipcode":"90001"}}'
# 响应
{
"code":0, //系统状态码
"message":"ok",
"data":{
"data":"57b049c3fdf24e309043f28139b44d05", //返回爬虫任务ID,爬取成功后会将此ID+页面数据推送到接收服务上
"bizCode":0, //业务状态码
"bizMsg":"ok" //业务状态信息
}
}
2、Java – OKHttp示例
//请求
OkHttpClient client = new OkHttpClient().newBuilder()
.build();
MediaType mediaType = MediaType.parse("application/json");
RequestBody body = RequestBody.create(mediaType, "{\"url\":\"https://www.amazon.com/s?k=baby\",\"callbackUrl\":\"http://***.***.***.***/callback/data\",\"bizContext\":{\"zipcode\":\"90001\"}}");
Request request = new Request.Builder()
.url("http://scrape.pangolinfo.com/api/task/receive/v1?token=xxx")
.method("POST", body)
.addHeader("Content-Type", "application/json")
.build();
Response response = client.newCall(request).execute();
//响应
{
"code":0, //系统状态码
"message":"ok",
"data":{
"data":"57b049c3fdf24e309043f28139b44d05", //返回爬虫任务ID,爬取成功后会将此ID+页面数据推送到接收服务上
"bizCode":0, //业务状态码
"bizMsg":"ok" //业务状态信息
}
}
3、Python – Request示例
# 请求
import requests
import json
url = "http://scrape.pangolinfo.com/api/task/receive/v1?token=xxx"
payload = json.dumps({
"url": "https://www.amazon.com/s?k=baby",
"callbackUrl": "http://***.***.***.***/callback/data",
"bizContext": {
"zipcode": "90001"
}
})
headers = {
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
# 响应
{
"code":0, //系统状态码
"message":"ok",
"data":{
"data":"57b049c3fdf24e309043f28139b44d05", //返回爬虫任务ID,爬取成功后会将此ID+页面数据推送到接收服务上
"bizCode":0, //业务状态码
"bizMsg":"ok" //业务状态信息
}
}
接收服务示例
需要帮助吗?
我们致力于您的成功,如果有任何问题,请随时联系我们!
我们的专家团队致力于帮助您解决和修复可能在使用我们的产品时遇到的任何问题。
如果您想提交错误报告或需要技术支持,请通过发送电子邮件联系我们的支持团队。或者参阅技术文档。[Data API 用户指南] | [Scrape API用户指南]