我们自己的访问统计默认开启。Google Analytics 只在你同意后启用,用来了解公开页面是否有用,不统计登录后的工作台。详见 隐私政策。

代理流量怎么算钱:40 个 Amazon 商品页实测

我们在 2026 年 10 月 24 日量了 40 次 Amazon 商品页请求的传输字节,按 IPFoxy 动态住宅代理的每 GB 标价算出每千页的流量费,再和数据接口每千次的价格对比,写清哪种抓法在什么成功率下更省。

示意插图:一个显示商品页的浏览器窗口放在秤上称重,数据包从它流出、经过一根带压力表的管道,代表被计量的代理流量;秤旁边一摞硬币。

动态住宅代理按 GB 收费,所以一页要下载多少字节,直接决定这页的代理成本。我们在 2026 年 10 月 24 日 18:30–18:41(新加坡时间)量了 40 次 Amazon 美国站商品页请求和 6 次整页浏览器加载:只取 HTML,一页的中位数是 0.44 MB;用无头浏览器整页加载,中位数是 7.96 MB,相差 18 倍。按 IPFoxy 动态住宅代理的官网标价算,每千页的流量费从 $0.88 到 $47.71 不等;同一页用数据接口取,每千次 $1.39。

这篇只做一件事:把「代理流量费」和「数据接口费」放在同一把尺子上量。哪种更省,取决于你怎么抓、买哪一档、成功率多高。下面每个数字都写了来源,原始数据可以下载复核。

横向条形图,同一个 Amazon 商品页用不同方法取一次的传输字节中位数:EveryInfra 商品详情 JSON 0.004 MB(不走代理);只取 HTML(curl,gzip)0.442 MB,16 页,范围 0.213 到 0.496 MB;无头 Chrome 屏蔽图片和字体 3.44 MB,3 页,范围 3.43 到 4.03 MB;无头 Chrome 整页加载 7.96 MB,3 页,范围 4.15 到 13.60 MB。2026 年 10 月 24 日在新加坡宽带直连实测。

为什么要先量字节

IPFoxy 的动态住宅代理按流量卖:官网 10 月 24 日列出 1GB、10GB、50GB、100GB、500GB、1000GB 六档,每 GB 标价从 $5.99 降到 $1.99,有效期 30 到 180 天;超过 1000GB 可定制,标「低至 $0.6/GB」(IPFoxy 动态住宅代理定价)。它的 IP 池覆盖 200 多个国家和地区(IPFoxy 节点地区列表)。按流量计费的产品,成本 = 下载的字节 × 单价。单价写在官网上,字节数要自己量。

「一页有多重」没有统一答案。HTTP Archive 的 Web Almanac 2025 把页面重量定义为显示一个页面要下载的全部字节,并指出图片占的字节最多(Web Almanac 2025 · Page Weight)。但抓数据的程序不一定要下载图片:只取 HTML,和让浏览器把整页跑完,下载量差一个数量级。所以我们按三种常见抓法分别量。

动手前写下的判据

量之前,我们先写下三条判据:

  1. 比较的单位是「拿到一个商品页的数据」。通过标准:每种方法至少拿到 3 个真实商品页(标题是商品名,不是拦截页)。
  2. 字节按线上传输量算,不按解压后的大小算,因为代理按传输量计费。HTML 用 curl 的 size_download 加 size_header(curl 手册 --write-out,Everything curl:write-out 变量);浏览器用 Chrome DevTools Protocol 的 Network.loadingFinished.encodedDataLength 逐个请求累加(CDP Network 域)。
  3. 换算用 1 GB = 10⁹ 字节(NIST 二进制倍数前缀说明)。如果服务商按 2³⁰ 字节算 1 GB,下面每个费用再低约 7%。

结果:第 1 条三种方法都通过(HTML 16 页,浏览器两种各 3 页);第 2、3 条按此执行。

实测一:三种抓法各下载多少

测试环境是新加坡的家庭宽带,不经代理。商品来自同一次搜索:我们用 Amazon 关键词搜索接口 搜 air fryer,取前 20 个 ASIN(18:30,31.6 秒,扣费 $0.001389)。

只取 HTML。 用 curl 带普通浏览器请求头和 Accept-Encoding: gzip, deflate, br(MDN:Accept-Encoding)请求 /dp/<ASIN>,每次间隔 4 秒,跑两轮各 20 次。Amazon 返回的是 gzip(RFC 1952),不是 Brotli(RFC 7932)。16 个真实商品页的传输量中位数是 441,688 字节,最小 213,178,最大 496,482;解压后是 1.08–2.68 MB。

无头浏览器,整页加载。 用 Chrome 的新无头模式(Chrome Headless 文档)打开 3 个商品页,关缓存,每页等 15 秒。三页分别是 13.60、4.15、7.96 MB,请求数 224–270 个。第一页里图片占 7.03 MB(52%),脚本占 3.02 MB。DevTools 里「传输大小」和「资源大小」是两回事,这里取的是前者(Chrome DevTools 网络面板参考)。

无头浏览器,屏蔽图片和字体。 很多抓取脚本会拦掉图片,Playwright 和 Puppeteer 的文档都给了写法(Playwright:Network,Puppeteer:请求拦截)。我们用 CDP 的 Network.setBlockedURLs 拦掉图片和字体后,三页是 4.03、3.44、3.43 MB。剩下的大头是脚本,约 3.0 MB,占 87%。

抓法样本每页传输量中位数范围
只取 HTML(curl,gzip)16 页0.442 MB0.213–0.496 MB
无头 Chrome,屏蔽图片和字体3 页3.44 MB3.43–4.03 MB
无头 Chrome,整页加载3 页7.96 MB4.15–13.60 MB
EveryInfra 商品详情 JSON(不走代理)1 次0.004 MB—

浏览器的两组只有 3 页,两页的主文档在 CDP 里记成 0 字节,所以这两行是下限,不是精确值。

实测二:不走代理,看到的是哪个市场

同一批请求还说明了一件事:出口 IP 在哪,页面就按哪里显示。

  • 第一轮不带 Cookie:20 个商品页里 19 个返回 200,但内容是 3,781 字节的「Click the button below to continue shopping」中间页,只有 1 个是真实商品页。3 个搜索页(/s?k=)都返回 503。
  • 第二轮先访问首页拿 Cookie:前 5 个仍是中间页,后 15 个是真实商品页。两轮合计 40 次请求,16 次拿到真实页面,占 40%。
  • 16 个真实页面的配送地址都显示 Singapore,其中 2 页写着这件商品不能配送到当前地址。
  • 浏览器打开 amazon.com/s?k=air+fryer,最后停在标题为「Amazon.sg : air fryer」的新加坡站。

所以要看美国买家看到的价格、配送和搜索结果,请求就要从美国的 IP 发出。这正是住宅代理的用途:IPFoxy 的解决方案页把电商、数据采集、广告验证列为主要场景(IPFoxy 解决方案),它自己的博客也写过电商数据采集的几种做法(IPFoxy:电商数据采集指南)。被拦下的中间页本身很小(含响应头 4,206 字节),费的不是流量,是请求次数和时间。

算一笔账:每 1000 个商品页

把实测一的中位数乘以 1000,再乘 IPFoxy 各档的每 GB 标价。这里假设每一页都一次成功,没算重试、没算建立代理隧道的握手、也没算上传字节:

抓法1GB 档 $5.99/GB10GB 档 $4.99/GB100GB 档 $2.99/GB1000GB 档 $1.99/GB
只取 HTML$2.65$2.20$1.32$0.88
浏览器,屏蔽图片和字体$20.59$17.15$10.28$6.84
浏览器,整页加载$47.71$39.74$23.81$15.85

同一个商品页,用 Amazon 商品详情接口 取,每次 $0.001389,即每千次 $1.39(18:29 读自数据能力目录);调用失败或返回为空不扣费。我们 18:37 调了一次 B0CYJDVT31,9.1 秒返回 20 个字段,JSON 正文 3,569 字节。如果只要列表级字段(价格、评分、评分人数、品牌),一次搜索返回 20 个商品,每千个商品约 $0.07。

分组条形图,每 1000 个 Amazon 商品页的代理流量费,按 IPFoxy 1GB 档 5.99 美元每 GB 和 1000GB 档 1.99 美元每 GB 两档计算:只取 HTML 分别是 2.65 和 0.88 美元;浏览器屏蔽图片和字体是 20.59 和 6.84 美元;浏览器整页加载是 47.71 和 15.85 美元。一条虚线标出 EveryInfra 每千次 1.39 美元。

成功率的门槛

上表假设 100% 成功。真实抓取会失败,失败就要重试。设成功率为 s,每个成功页面的流量费约等于「流量费 ÷ s」(失败页只有约 4 KB,可以忽略)。只取 HTML 时,要比数据接口省钱,成功率至少要到:

  • 1GB、10GB、50GB 档:分别要 190%、159%、127%,也就是怎么都不会更省;
  • 100GB 档:95%;
  • 500GB 档:76%;
  • 1000GB 档:63%。

我们这次不经代理,在新加坡宽带上两轮合计只有 40% 拿到真实页面。经过美国住宅 IP 的成功率会不同,我们没有 IPFoxy 账号,没有量,所以不给这个数。读者可以拿自己的成功率套进上面的公式。

柱状图,只取 HTML 时,成功率要多高代理流量费才低于数据接口每千次 1.39 美元:1GB 档 190%,10GB 档 159%,50GB 档 127%,这三档超过 100%,标为做不到;100GB 档 95%,500GB 档 76%,1000GB 档 63%。一条虚线标出 100%。

这笔账没有算人力。自己抓要写解析、跟着页面改版改代码、处理中间页和重试;数据接口返回固定字段名,这部分不用做。反过来,数据接口只覆盖它目录里的平台和字段,目录外的页面还得自己抓。

分工:哪些交给 IPFoxy,哪些交给数据接口

按上面的数,我们的建议是:

  • 交给 IPFoxy:必须以某个国家的用户身份打开的页面,例如看美国买家的配送和到手价、登录自己的卖家后台、检查本地广告位;数据接口目录里没有的网站;需要浏览器真实渲染的页面。静态住宅 IP 适合长期绑定一个店铺或账号,官网标价 $7.99/月起(IPFoxy 静态住宅代理定价)。
  • 交给数据接口:目录里已有的平台和字段,尤其是量大、字段固定、要进表格或数据库的任务。调用数据接口本身不需要代理,走代理只会多花代理流量。

两件事放在同一个脚本里的写法,见我们文档的「配合 IPFoxy 代理使用」一节。那段 Python 示例用 requests 2.34.2(PyPI:requests),自己的请求经代理出口,调 EveryInfra 的请求用 trust_env = False 直连(Requests 高级用法:代理,Requests API:Session.trust_env)。代理地址的格式是 用户名:密码@主机:端口,IPFoxy 帮助中心有 Python 的配置说明(IPFoxy:Python 使用动态代理);它的示例用的是标准库 urllib.request,那个库默认也会读环境变量里的代理(Python urllib.request 文档)。Scrapy 用户可以在请求的 meta 里设 proxy(Scrapy:HttpProxyMiddleware)。

我们没有 IPFoxy 账号,所以示例里的代理部分是用本地模拟代理验证的:它按 HTTP 的 CONNECT 方法建隧道(RFC 9110 第 9.3.6 节,MDN:CONNECT),按 Proxy-Authorization 头里的 Basic 凭据核对用户名和密码(RFC 7617,MDN:Proxy-Authorization)。密码对时,示例经模拟代理访问 ipinfo.io 并正常拿到 EveryInfra 的商品数据;密码错时,模拟代理返回 407(MDN:407),示例在调用 EveryInfra 之前就停下,没有扣费。即使把 HTTPS_PROXY 也设成模拟代理,模拟代理的日志里也只有 ipinfo.io 一条,EveryInfra 的请求没有经过它。

这份数据怎么引用

  • 原始数据:amazon-page-weight-2026-10-24.csv(GitHub,EveryInfra 示例仓:amazon-page-weight-2026-10-24.csv;本站副本 https://everyinfra.com/articles/proxy-traffic-cost-amazon-product-pages/amazon-page-weight-2026-10-24.csv),51 行,每行一次请求或一次整页加载,字段有页面类型、ASIN、方法、时间、HTTP 状态、是否真实页面、传输字节、请求数和说明。
  • 读取时间:2026-10-24 18:30–18:41(新加坡时间,UTC+8);IPFoxy 价格读取于同日。
  • 复核方法:HTML 用 curl 8.7.1 的 --write-out '%{size_download} %{size_header}';浏览器用 Chrome 155 无头模式加 CDP,脚本在 Node.js 26 里用内置的 WebSocket 连接(Node.js 全局对象)。脚本和本文图表的生成脚本放在我们的 GitHub 示例目录,见 /docs#with-proxy 里的链接。
  • 建议引用写法:EveryInfra,《代理流量怎么算钱:40 个 Amazon 商品页实测》,2026-10-24,https://everyinfra.com/blog/proxy-traffic-cost-amazon-product-pages (数据读取于 2026-10-24 18:30–18:41 SGT)。

结论在什么情况下不成立

  • 样本小:真实 HTML 16 页,浏览器两种各 3 页,都是空气炸锅这一个类目。页面越长(评论多、变体多),字节越大。HTTP Archive 的月度报告显示页面重量逐年变化(HTTP Archive:Page Weight 报告),一年后要重量。
  • 没经过代理:经代理时,HTTP 头、隧道握手、重定向都会多一点字节;成功率也会不同。
  • 价格是标价:IPFoxy 官网写了注册折扣(10GB 档起 17%–23%),我们没有再叠加;以 IPFoxy 官网当天价格为准。
  • 合规不在本文范围:我们只量字节。Amazon 的 robots.txt 对通用爬虫没有屏蔽 /dp/ 商品页,但对 Scrapy、GPTBot 等多个爬虫名整站屏蔽(Amazon robots.txt);它的使用条件(2026-08-14 更新)在「License and Access」一节限制了数据挖掘和机器人工具(Amazon Conditions of Use)。自己抓取之前,先读目标网站的条款。

本次花费:EveryInfra 3 次调用,合计 $0.004167(搜索 1 次、商品详情 2 次);另有 3 次因同一个 Key 的频率限制返回 429,没有扣费。IPFoxy 是我们的合作伙伴。本文指向 IPFoxy 的链接都不带推广参数,所以没有按推广链接标注(Google 对推广和付费链接的标注要求见限定出站链接)。我们的合作伙伴介绍页见 IPFoxy 全球代理,本文数字以读取当天两家官网为准。

延伸阅读

参考资料

  1. IPFoxy,《动态住宅代理》定价页,读取于 2026-10-24,https://www.ipfoxy.net/pricing/rotating/
  2. IPFoxy,《静态住宅代理》定价页,读取于 2026-10-24,https://www.ipfoxy.net/pricing/residential/
  3. IPFoxy 帮助中心,《How to use Rotating proxy through Python?》,2025-11-18,https://www.ipfoxy.com/help/docs/bn3BDn
  4. IPFoxy,《解决方案》,读取于 2026-10-24,https://www.ipfoxy.net/solution/
  5. IPFoxy,节点地区列表,读取于 2026-10-24,https://www.ipfoxy.net/country/
  6. IPFoxy 博客,电商数据采集指南,读取于 2026-10-24,https://www.ipfoxy.net/blog/use-cases/6929
  7. Chrome DevTools Protocol,Network 域(loadingFinished、setBlockedURLs),读取于 2026-10-24,https://chromedevtools.github.io/devtools-protocol/tot/Network/
  8. Chrome for Developers,《Chrome Headless mode》,读取于 2026-10-24,https://developer.chrome.com/docs/chromium/headless
  9. Chrome for Developers,《Network features reference》,读取于 2026-10-24,https://developer.chrome.com/docs/devtools/network/reference
  10. curl 项目,curl 手册(--write-out),读取于 2026-10-24,https://curl.se/docs/manpage.html
  11. Everything curl,《Write out》,读取于 2026-10-24,https://everything.curl.dev/usingcurl/verbose/writeout.html
  12. Requests 文档,《Advanced Usage》(Proxies 一节),读取于 2026-10-24,https://requests.readthedocs.io/en/latest/user/advanced/
  13. Requests 文档,《Developer Interface》(Session.trust_env),读取于 2026-10-24,https://requests.readthedocs.io/en/latest/api/
  14. PyPI,requests 2.34.2,2026-05-14 发布,https://pypi.org/project/requests/
  15. Python 文档,《urllib.request》,读取于 2026-10-24,https://docs.python.org/3/library/urllib.request.html
  16. IETF,RFC 9110《HTTP Semantics》,2022-06,https://www.rfc-editor.org/rfc/rfc9110
  17. IETF,RFC 7617《The 'Basic' HTTP Authentication Scheme》,2015-09,https://www.rfc-editor.org/rfc/rfc7617
  18. IETF,RFC 1952《GZIP file format specification version 4.3》,1996-05,https://www.rfc-editor.org/rfc/rfc1952
  19. IETF,RFC 7932《Brotli Compressed Data Format》,2016-07,https://www.rfc-editor.org/rfc/rfc7932
  20. MDN,《CONNECT request method》,读取于 2026-10-24,https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Methods/CONNECT
  21. MDN,《Proxy-Authorization header》,读取于 2026-10-24,https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Proxy-Authorization
  22. MDN,《407 Proxy Authentication Required》,读取于 2026-10-24,https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/407
  23. MDN,《Accept-Encoding header》,读取于 2026-10-24,https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Accept-Encoding
  24. HTTP Archive,《Web Almanac 2025:Page Weight》,2026-01-15,https://almanac.httparchive.org/en/2025/page-weight
  25. HTTP Archive,《Page Weight》月度报告,读取于 2026-10-24,https://httparchive.org/reports/page-weight
  26. Playwright 文档,《Network》,读取于 2026-10-24,https://playwright.dev/docs/network
  27. Puppeteer 文档,《Request Interception》,读取于 2026-10-24,https://pptr.dev/guides/network-interception
  28. Scrapy 文档,《Downloader Middleware》(HttpProxyMiddleware),读取于 2026-10-24,https://docs.scrapy.org/en/latest/topics/downloader-middleware.html
  29. NIST,《Prefixes for binary multiples》,读取于 2026-10-24,https://physics.nist.gov/cuu/Units/binary.html
  30. Amazon,robots.txt,读取于 2026-10-24,https://www.amazon.com/robots.txt
  31. Amazon,《Conditions of Use》,2026-08-14 更新,https://www.amazon.com/gp/help/customer/display.html?nodeId=508088
  32. IPinfo,《Developers》文档,读取于 2026-10-24,https://ipinfo.io/developers
  33. Node.js 文档,《Global objects》(WebSocket),读取于 2026-10-24,https://nodejs.org/api/globals.html
  34. EveryInfra,数据能力目录 GET /api/v1/social/catalog,读取于 2026-10-24 18:29,https://api.everyinfra.com/api/v1/social/catalog
  35. Google 搜索中心,《Qualify your outbound links to Google》,读取于 2026-10-24,https://developers.google.com/search/docs/crawling-indexing/qualify-outbound-links
  36. EveryInfra,示例仓 everyinfra-agent-plugins 中的原始数据 amazon-page-weight-2026-10-24.csv,2026-10-24,https://github.com/everyinfra/everyinfra-agent-plugins/blob/main/examples/proxy-plus-data-api/data/amazon-page-weight-2026-10-24.csv

引用编号 BL-36