抓取 duckduckgo.com
今天能从 duckduckgo.com 返回页面的调用,以及自 2026年8月14日 起从请求日志读出的参数、模式和失败情形。 最近测试于 2026年9月6日。
关于 duckduckgo.com
duckduckgo.com 这样描述自己:“这家互联网隐私公司让您无需任何妥协,即可轻松掌控自己在网上的个人信息”。
其首页声明了 12 种语言:af-za, be-by, bg-bg, cs-cz, da-dk, de-de, el-gr, en-us, es-es, et-ee, fi-fi, fr-fr。
其站点地图在 2 个文件中列出了 318 个 URL。 在 317 条带日期的条目中,有 292 条在最近 30 天内发生变化,最新一条在 2026年9月3日。
其 robots.txt 指定了 2 个站点地图,并禁止 6 个路径,其中包括 /lite, /html, /email/。
基于 Crawlbase 测得
2026年8月 对每个账户的每个请求统计的成功率:95.9%。URL 模式、国家和失败情况来自自 2026年8月14日 起的请求日志;0.0% 的成功调用使用了 JavaScript 令牌,响应中位时间为 2.1s。
在 Cookbook 的 11 个技术与开发者站点中,duckduckgo.com 按成功率排在第 8 位(共 11 个);类别中位数为 97.8%。 其响应中位时间 2.1s 与类别中位数 1.9s 相当。 11 个站点中有 8 个接受普通令牌,这个站点也在其中。
调用
各账户抓取最多的 URL 形态,配以最常成功的 country 和令牌。请将占位路径替换为该站点的真实路径。
curl "https://api.crawlbase.com/?token=YOUR_TOKEN&url=https%3A%2F%2Fwww.duckduckgo.com%2Fexample-page"from crawlbase import CrawlingAPI api = CrawlingAPI({'token': 'YOUR_TOKEN'}) r = api.get('https://www.duckduckgo.com/example-page') html = r['body']
const { CrawlingAPI } = require('crawlbase'); const api = new CrawlingAPI({ token: 'YOUR_TOKEN' }); const r = await api.get('https://www.duckduckgo.com/example-page');
关键参数
| 参数 | 设置为 | 原因 |
|---|---|---|
country | 不设置 | 大多数成功调用未设置 country(100%),成功率为 96.7%。 |
javascript | 不设置 | 普通令牌调用的成功率为 97.4%,占流量的 99.3%。浏览器成本更高,而在该站点上没有任何收益。 |
各账户抓取的 URL 模式
| 模式 | 成功占比 | JavaScript 令牌 | Country | 查询参数 |
|---|---|---|---|---|
/{slug} | 100% | 0.0% | 无 | q |
你能得到的字段
字段取决于页面类型。商品页通常带有 ld+json 块,包含名称、价格、货币和库存状态;文章页则有标题和正文。请检查你收到的第一个响应。
会出问题的地方及修复方法
自 2026年8月14日 以来的失败中,站点的响应为:
定时运行
该站点的响应时间中位数为 2.1s。每天超过几千页时,请将 URL 列表连同回调推送到 Crawler;它会控制调用节奏,并重试站点拒绝的请求。
常见问题
抓取 duckduckgo.com 需要浏览器吗?
不需要。97.4% 的普通令牌调用成功,各账户 99.3% 的流量不使用浏览器。
在 Crawlbase 上抓取一个 duckduckgo.com 页面要多少钱?
不用浏览器时为 1 积分。duckduckgo.com 属于标准等级。
抓取 duckduckgo.com 应该设置哪个 country?
不需要:大多数成功调用未设置它。
duckduckgo.com 上的其他页面
duckduckgo.com 在自己的站点地图中列出的页面,由 Crawlbase 于 2026年9月6日 抓取,并在连续 2 次运行中得到验证。每一行都是返回该页面及其内容的最便宜调用。
| 页面 | 示例 | 令牌 | 国家 | 中位数 |
|---|---|---|---|---|
首页/ | duckduckgo.com/ | 普通 | 无 | 6.5s |