其他搜索引擎
使用我们的universal
源代码抓取其他搜索引擎。它接受URL以及附加参数。您可以在下表中找到可用参数的列表。
概述
以下是我们支持的所有可用数据源值与其他目标的快速概述。
universal
提交任何您喜欢的URL。
代码示例
在下面的示例中,我们发出请求以获取提供的百度URL的结果。
curl 'https://realtime.oxylabs.io/v1/queries' \
--user 'USERNAME:PASSWORD' \
-H 'Content-Type: application/json' \
-d '{
"source": "universal",
"url": "http://www.baidu.com/s?ie=utf-8&f=8&rsv_bp=1&rsv_idx=1&ch=&tn=baidu&bar=&wd=adidas"
}'
以上示例使用了 Realtime 集成方法。如果您想在您的查询中使用一些其他集成方法(如推拉或代理端点),请参考集成方法部分。
查询参数
source
universal
url
转到通用页面的直接 URL(链接)。
不适用
user_agent_type
desktop
geo_location
不适用
locale
区域设置,正如接受语言标头所预期的一样。
不适用
render
不适用
content_encoding
base64
context
:
content
Base64 编码的 POST
请求正文。只有将 http_method
设为 post
时才有用。
不适用
context
:
cookies
传递自己的 cookies。
不适用
context
:
follow_redirects
表明您是否希望爬虫程序遵循重定向(带有目标 URL 的 3xx 响应)以获得重定向链末端的 URL 内容。
不适用
context
:
headers
传递自己的标头。
不适用
context
:
http_method
如果您希望通过 网络爬虫 API 程序向您的目标 URL 发出 POST
请求,则可以将其设置为 post
。
get
context
:
session_id
I如果要在多个请求中使用同一个代理,则可以通过使用该参数来实现。只要将您的会话设置为您想要的任何字符串,我们就会为该 ID 分配一个代理,并最长保留 10 分钟。之后,如果使用相同的会话 ID 提出另一个请求,我们将为该特定会话 ID 分配一个新代理。
不适用
context
:
successful_status_codes
定义一个或几个自定义的 HTTP 响应代码,我们将根据此代码确定爬取是否成功,并将相关内容返回给您。如果您希望我们返回 503 错误页面,则该参数可能很有用,同时也适用于其他一些非标准的情况。
不适用
callback_url
不适用
- 必须提供的参数
形成URL
百度
作业参数分配到URL:
https://<subdomain>.baidu.<domain>/s?ie=utf-8&wd=<query>&rn=<limit>&pn=<calculated_start_page>
当形成URL时,请遵循以下说明:
编码搜索词:搜索词必须进行URL编码。例如,空格应替换为%20,这代表URL中的空格字符。
计算起始页:start_page参数现在对应要跳过的搜索结果数量。使用公式
limit * start_page - limit
计算值。子域分配:子域值取决于作业中提供的用户代理类型。如果用户代理类型包含mobile,则子域值应为m。否则,应为www。
查询参数:根据子域值(m或www),查询参数应相应调整(对于m为word,对于www为wd)。
示例生成的URL
移动端:
https://m.baidu.com/s?ie=utf-8&word=test&rn=10&pn=20
桌面端:
https://www.baidu.com/s?ie=utf-8&wd=test%20query&rn=13
等效作业示例
停用的百度搜索源:
{
"source": "baidu_search",
"query": "test",
"domain": "com",
"limit": 5,
"start_page": 3,
"user_agent_type": "desktop"
}
更新后的
universal
源:
{
"source": "universal",
"url": "https://www.baidu.com/s?ie=utf-8&wd=test&rn=5&pn=10",
"user_agent_type": "desktop"
}
Yandex
作业参数分配到URL:
https://yandex.<domain>/search/?text=<query>&numdoc=<limit>&p=<start_page>&lr=<geo_location>
当形成URL时,请遵循以下说明:
编码搜索词:搜索词必须进行URL编码。例如,空格应替换为
%20
,这代表URL中的空格字符。起始页调整:
start_page
的值必须减1。例如,如果所需的起始页为3,则URL中的页码值应为2。本地化:如果域名为
ru
或tr
,则添加一个附加查询参数lr
,并赋值为geo_location
。对于其他域名,geo_location
值在查询参数rstr
下,且值前加一个-符号。不支持:pages参数不再支持。必须通过更改URL中的当前页码值分别提交作业。
生成的URL示
https://yandex.ru/search/?text=test&numdoc=5&p=0&lr=100
https://yandex.com/search/?text=test%201&numdoc=10&p=2&rstr=-100
等效作业示例
停用的Yandex搜索源:
{
"source": "yandex_search",
"query": "test",
"domain": "com",
"limit": 5,
"start_page": 3,
"geo_location": 100,
"results_language": "en"
}
更新后的
universal
源:
{
"source": "universal",
"url": "https://yandex.ru/search?text=adidas&numdoc=5&p=2&lr=100&lang=en"
}
参数值
Geo_Location
请在下方查看支持地理位置的完整列表。
示例如下:
"United Arab Emirates",
"Albania",
"Armenia",
"Angola",
"Argentina",
"Australia",
...
"Uruguay",
"Uzbekistan",
"Venezuela Bolivarian Republic of",
"Viet Nam",
"South Africa",
"Zimbabwe"
HTTP_Method
通用 Crawler 支持两种 HTTP 方法。GET
(默认)和POST
。
"GET",
"POST"
Last updated
Was this helpful?