住宅代理只给目标网站用:PAC 文件与分流规则省流量设置
住宅代理按 GB 计费,系统更新、视频、字体和统计脚本也会悄悄吃掉流量。本文讲清 PAC 文件和脚本分流规则怎么写,让只有目标网站走付费代理,其余直连,以及哪些场景不该分流。
住宅代理按流量计费,而浏览器和程序产生的流量里,真正来自目标网站的往往只是一部分:系统和浏览器更新、无关网站、第三方统计脚本、视频和字体都会经过代理,每一 MB 都在扣你的 GB。
分流的思路很简单:只有目标域名走付费代理,其余全部直连。本文只讲这一个技巧,包括 PAC 文件、脚本里的按域名选代理,以及什么情况下不应该分流。
先算一下值不值
以几家按流量计费的住宅代理为例(价格来自官网,核实于 2026-10-05,711Proxy 核实于 2026-10-06):
| 服务商 | 住宅价格 | 有效期 |
|---|---|---|
| DataImpulse | $1/GB | 流量永不过期 |
| Novada | 25 GB $50/月($2/GB),1 TB 档 $1.3/GB | 30 天 |
| 711Proxy | 5 GB $15($3/GB),30 天;企业套餐 500 GB 起 $0.76/GB | 常规 30 天(续费结转);企业套餐永久有效 |
如果每月用 50 GB、其中三成是无关流量,在 $2/GB 下每月就浪费约 $30。流量越大、单价越高,分流越值得做。流量用在哪里、怎么估算,可以参考《动态住宅代理哪家好》和《便宜代理价格横评》。
方法一:PAC 文件(浏览器)
PAC(代理自动配置)文件是一段 JavaScript,浏览器每次请求前调用 FindProxyForURL,根据返回值决定走代理还是直连。
function FindProxyForURL(url, host) {
// 目标网站:走住宅代理
var targets = ["example-shop.com", "example-data.org"];
for (var i = 0; i < targets.length; i++) {
if (host === targets[i] || dnsDomainIs(host, "." + targets[i])) {
return "PROXY gate.your-provider.example:8000";
}
}
// 其余:直连
return "DIRECT";
}
几个要点:
- 返回值格式:
PROXY host:port表示 HTTP 代理,SOCKS5 host:port表示 SOCKS5,DIRECT表示直连。协议区别见《SOCKS5 和 HTTP 代理有什么区别》。 - 认证:PAC 文件里不能写用户名和密码。浏览器会弹窗要求输入,或者你使用服务商后台的 IP 白名单认证(是否支持、怎么设置以服务商后台为准)。
- 加载方式:Chrome 可以用启动参数
--proxy-pac-url=指定 PAC 地址;Firefox 在"网络设置"里选择"自动代理配置的 URL"。 - 域名要写全:一个网站往往还会从自己的 CDN、API 子域名加载内容。先在开发者工具的"网络"面板里看一遍真实请求的域名,再写进列表。
方法二:在采集脚本里按域名选代理
写程序采集时,最省流量的做法不是分流,而是根本不请求无关资源:只请求需要的页面或接口,不下载图片、视频和字体。如果确实要访问多个站点,可以按域名决定是否走代理:
from urllib.parse import urlparse
import requests
PROXY = "http://user:[email protected]:8000"
TARGETS = {"example-shop.com", "example-data.org"}
def fetch(url):
host = urlparse(url).hostname or ""
use_proxy = any(host == t or host.endswith("." + t) for t in TARGETS)
proxies = {"http": PROXY, "https": PROXY} if use_proxy else None
return requests.get(url, proxies=proxies, timeout=30)
用无头浏览器采集时,可以在请求拦截里直接屏蔽图片、媒体和字体类型的请求,效果往往比分流更明显。
什么时候不该分流
分流会让同一个网页的不同资源从不同 IP 发出。对采集来说问题不大,但对登录账号的场景是个隐患:
- 目标网站的 CDN、登录、支付子域名如果走了直连,对方会同时看到你的代理 IP 和真实 IP;
- 指纹浏览器的意义就是让每个环境呈现一致的网络身份。AdsPower 这类工具是按环境绑定代理的,店铺和社媒账号所在的环境,建议整个环境都走同一个代理,不要再做分流。
所以,分流主要适合:数据采集、价格监控、内容可用性检查这类不登录或不涉及账号一致性的任务。
检查分流是否生效
- 在浏览器里分别打开一个目标网站上的 IP 显示页(如果有)和一个普通的 IP 查询页,确认前者显示代理 IP、后者显示本地 IP。
- 在服务商后台看一天的流量曲线,和分流前对比。
- 定期回看域名列表:网站改版后可能新增子域名,漏掉的请求会走直连。
合规提醒
分流只是节省流量的技术手段。请只采集公开数据,遵守目标网站的服务条款和 robots 规则,控制请求频率。
本站部分链接为推广链接,通过它们购买我们可能获得佣金,但不会影响你的价格与我们的评价。






