[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"blog-strapi-article:zh:crawlee-proxy-auth-rotation-troubleshooting":3,"blog-article:\u002Fblog\u002Fcrawlee-proxy-auth-rotation-troubleshooting":698,"blog-related:\u002Fblog\u002Fcrawlee-proxy-auth-rotation-troubleshooting":699,"blog-translations:\u002Fblog\u002Fcrawlee-proxy-auth-rotation-troubleshooting":700},{"available":4,"article":5,"relatedArticles":184,"translations":579},true,{"source":6,"id":7,"documentId":8,"translationKey":8,"locale":9,"slug":10,"path":11,"_path":11,"title":12,"description":13,"excerpt":13,"image":14,"publishedAt":15,"updatedAt":16,"author":17,"tags":18,"featured":19,"sortOrder":20,"readingTime":21,"bodyType":22,"bodyBlocks":23,"bodyHtml":183},"strapi",3019,"g00haoamp0ulqau0xvrdcq11","zh","crawlee-proxy-auth-rotation-troubleshooting","\u002Fblog\u002Fcrawlee-proxy-auth-rotation-troubleshooting","Crawlee 代理 IP 配置指南：认证、轮换与采集失败排查","Crawlee 代理 IP 配置指南：认证、轮换与采集失败排查，提供 proxyConfiguration 示例、出口 IP 验证和 407\u002F403\u002F429 排障步骤。","https:\u002F\u002Fcms.quanqiudaili.com\u002Fuploads\u002Flarge_crawlee_ip_cover_935a4ab9ea.webp","2026-10-01T14:09:22.045Z","2026-10-01T14:09:22.030Z","Global Proxies Team",[],false,0,3,"blocks",[24,30,36,40,44,48,52,56,60,64,68,72,76,97,101,105,109,113,117,121,125,129,133,137,151,155,159,163,167,171,175,179],{"type":25,"children":26},"paragraph",[27],{"text":28,"type":29},"如果你要在 Crawlee 中做多地区公开数据采样，先把代理 IP 放进 Crawlee 的代理配置对象，再用少量请求验证出口 IP、地区和状态码。动态住宅代理 IP 更适合短时轮换，长期保持同一会话则要评估静态住宅代理 IP；只采集公开可访问或已获授权的数据，并遵守目标站服务条款与 robots.txt。","text",{"type":31,"level":32,"children":33},"heading",2,[34],{"text":35,"type":29},"Crawlee 如何读取和使用代理 IP",{"type":25,"children":37},[38],{"text":39,"type":29},"Crawlee 会在创建请求上下文时从 `ProxyConfiguration` 取得代理地址，再由具体 Crawler 发出请求。因此，代码里创建了代理配置还不够，还要确认该对象已经传给当前 Crawler。使用浏览器型 Crawler 时，还应查看浏览器启动和页面请求是否沿用了同一配置。",{"type":25,"children":41},[42],{"text":43,"type":29},"以支持 `proxyConfiguration` 的 Crawlee 任务为例，先用环境变量保存认证信息，再从代理 IP 服务商提供的入口生成配置：",{"type":31,"level":32,"children":45},[46],{"text":47,"type":29},"proxyConfiguration、轮换与会话配置",{"type":25,"children":49},[50],{"text":51,"type":29},"```js\nimport { CheerioCrawler, ProxyConfiguration } from 'crawlee';",{"type":25,"children":53},[54],{"text":55,"type":29},"const proxyConfiguration = new ProxyConfiguration({\nproxyUrls: [process.env.PROXY_URL],\n});",{"type":25,"children":57},[58],{"text":59,"type":29},"const crawler = new CheerioCrawler({\nproxyConfiguration,\nuseSessionPool: true,\npersistCookiesPerSession: true,\nmaxConcurrency: 1,\nmaxRequestRetries: 2,\nrequestHandler: async ({ request, response }) => {\nconsole.log(request.url, response?.statusCode);\n},\n});",{"type":25,"children":61},[62],{"text":63,"type":29},"await crawler.run([\n'https:\u002F\u002Fexample.com\u002Fpublic-page',\n'https:\u002F\u002Fapi.ipify.org?format=json',\n]);\n```",{"type":25,"children":65},[66],{"text":67,"type":29},"出口检测 URL 必须由同一个 `crawler.run()` 发出；解析该响应的 IP，并将 Crawlee 脱敏日志与代理服务端出口记录按时间核对。浏览器单独打开检测页不能证明 Crawlee 使用了代理。",{"type":25,"children":69},[70],{"text":71,"type":29},"`PROXY_URL` 只放当前代理 IP 的协议、主机、端口和认证信息，不要把 API 密钥、Cookie 或目标站账号写进文章示例。先从 1 个 URL、1 个并发开始，再逐步扩大任务。",{"type":31,"level":21,"children":73},[74],{"text":75,"type":29},"轮换、粘性会话和并发怎么配",{"type":77,"format":78,"children":79},"list","unordered",[80,85,89,93],{"type":81,"children":82},"list-item",[83],{"text":84,"type":29},"`useSessionPool` 管理 Crawlee 会话，`persistCookiesPerSession` 让同一会话的 Cookie 跨请求保留；这不等于代理服务端一定为每个请求更换出口。",{"type":81,"children":86},[87],{"text":88,"type":29},"每个请求都换 IP：适合短时、多地区公开页面采样，但结果可能不易复现。",{"type":81,"children":90},[91],{"text":92,"type":29},"粘性会话：适合需要连续请求的分页任务；会话时长越长，可用 IP 范围通常越窄。",{"type":81,"children":94},[95],{"text":96,"type":29},"静态住宅代理 IP：适合长期保持同一地区和身份的管理任务，不适合高频轮换。",{"type":25,"children":98},[99],{"text":100,"type":29},"记录请求数、成功数、失败重试数、流量和任务耗时，再计算“成功请求成本”。不要只比较套餐单价。",{"type":25,"children":102},[103],{"text":104,"type":29},"选择参数时可以按任务连续性判断：独立页面采样优先控制并发和请求轮换；分页、Cookie 或连续操作则优先保持会话。并发和重试同时调高，会放大失败请求和流量消耗，应先在小样本上调整一个参数再复测。",{"type":31,"level":32,"children":106},[107],{"text":108,"type":29},"Crawlee 返回 407、403、429 和超时怎么排查",{"type":25,"children":110},[111],{"text":112,"type":29},"1. **配置未生效**：只输出协议、脱敏主机、端口、会话 ID、状态码和耗时，不打印含账号密码的 `PROXY_URL`；再核对同一 crawler 的出口记录。\n2. **407**：核对协议、主机、端口、账号和密码是否填错或带有多余空格。\n3. **403\u002F429**：降低并发和重试频率，检查目标站规则、分页方式和请求间隔；持续被拒绝时应缩小范围或停止任务，不要靠更换代理 IP 继续请求。\n4. **超时或连接重置**：先换同地区代理 IP，再检查请求超时、连接池和目标 URL。\n5. 连续失败时停止扩大任务，保存 URL、状态码、响应头、并发、重试次数和测试时间。",{"type":31,"level":32,"children":114},[115],{"text":116,"type":29},"如何验证代理 IP 已经生效",{"type":25,"children":118},[119],{"text":120,"type":29},"先在一个公开测试页和一个受控出口回显 URL 上运行少量请求，记录 Crawlee 版本、请求 URL、返回出口、状态码、响应耗时、并发和重试次数，再扩大任务。",{"type":25,"children":122},[123],{"text":124,"type":29},"建议把 `request.url`、状态码、重试次数、会话标识和关闭原因写入同一条脱敏日志。出口 IP 未变化说明配置可能未被读取；出口 IP 已变化但返回 403\u002F429，则应转查请求频率、目标规则和会话行为。",{"type":25,"children":126},[127],{"text":128,"type":29},"代理 IP 只能改变出口 IP 和地区条件，不能替代目标站规则、公开数据范围或合规的请求频率。",{"type":31,"level":32,"children":130},[131],{"text":132,"type":29},"官方文档",{"type":25,"children":134},[135],{"text":136,"type":29},"本文示例按 Crawlee JavaScript 常见的 `ProxyConfiguration` 结构编写。版本变化时，请先核对字段名和 Crawler 参数：",{"type":77,"format":78,"children":138},[139,143,147],{"type":81,"children":140},[141],{"text":142,"type":29},"[Crawlee Proxy management](https:\u002F\u002Fcrawlee.dev\u002Fjs\u002Fdocs\u002Fguides\u002Fproxy-management)：核对代理配置、轮换和会话管理。",{"type":81,"children":144},[145],{"text":146,"type":29},"[Crawlee CheerioCrawler](https:\u002F\u002Fcrawlee.dev\u002Fjs\u002Fdocs\u002Fguides\u002Fcheerio-crawler)：核对 Crawler 参数和请求处理方式。",{"type":81,"children":148},[149],{"text":150,"type":29},"[HTTP 状态码说明](https:\u002F\u002Fdeveloper.mozilla.org\u002Fzh-CN\u002Fdocs\u002FWeb\u002FHTTP\u002FStatus)：区分认证、限流和服务端错误。",{"type":31,"level":32,"children":152},[153],{"text":154,"type":29},"FAQ",{"type":31,"level":21,"children":156},[157],{"text":158,"type":29},"Crawlee 代理 IP 适合什么任务？",{"type":25,"children":160},[161],{"text":162,"type":29},"适合合规的公开数据采样、多地区页面验证和小规模自动化测试。正式任务仍需遵守目标站规则。",{"type":31,"level":21,"children":164},[165],{"text":166,"type":29},"轮换越频繁越好吗？",{"type":25,"children":168},[169],{"text":170,"type":29},"不是。轮换频率要和分页、会话、目标站风控力度匹配；频繁切换可能让结果不可复现。",{"type":31,"level":21,"children":172},[173],{"text":174,"type":29},"出口 IP 已变化但仍返回 403 或 429 怎么办？",{"type":25,"children":176},[177],{"text":178,"type":29},"说明代理配置基本生效，下一步应检查并发、请求频率、会话、目标站规则和数据访问权限，不要只靠频繁更换代理 IP继续请求。",{"type":25,"children":180},[181],{"text":182,"type":29},"正式扩大任务前，先用 1 个公开 URL、1 个并发完成出口 IP、状态码和日志验证。需要多地区、短会话公开数据采样时，可进一步查看[动态住宅代理 IP](https:\u002F\u002Fwww.quanqiudaili.com\u002Fproduct\u002Fdynamic-residential)。","",[185,306,469],{"source":6,"id":186,"documentId":187,"translationKey":187,"locale":9,"slug":188,"path":189,"_path":189,"title":190,"description":191,"excerpt":191,"image":192,"publishedAt":193,"updatedAt":194,"author":17,"tags":195,"featured":19,"sortOrder":20,"readingTime":32,"bodyType":22,"bodyBlocks":196,"bodyHtml":183},3037,"y6ot2xv3nw32h1po6tszsytm","poe-proxy-region-login-access-troubleshooting","\u002Fblog\u002Fpoe-proxy-region-login-access-troubleshooting","Poe 代理 IP 怎么配：地区限制、登录与访问失败排查","Poe 代理 IP 怎么配：地区限制、登录与访问失败排查，覆盖浏览器配置、Cookie 会话、地区验证和停止条件。","https:\u002F\u002Fcms.quanqiudaili.com\u002Fuploads\u002Flarge_poe_ip_cover_d741becdde.webp","2026-10-01T14:16:12.147Z","2026-10-01T14:16:12.134Z",[],[197,201,205,209,213,217,221,225,229,233,237,241,245,249,254,258,262,265,269,283,286,290,294,298,302],{"type":25,"children":198},[199],{"text":200,"type":29},"Poe 登录或访问异常时，先确认网页或客户端是否真的使用代理 IP，再区分出口 IP、Cookie 会话、账号状态和 Poe 服务规则。代理 IP 不能保证解除地区限制、通过审核或获得更高配额。",{"type":25,"children":202},[203],{"text":204,"type":29},"接入全球代理服务前先确认当前环境属于支持的海外网络环境；不在支持范围内时，应先确认服务适用条件。",{"type":31,"level":32,"children":206},[207],{"text":208,"type":29},"Poe 网页与客户端的代理接入差异",{"type":25,"children":210},[211],{"text":212,"type":29},"配置步骤应锁定一个已核验的浏览器与版本，写出系统代理或浏览器代理入口、四个字段位置、认证弹窗行为和启用后的出口验证；其他客户端只列为待验证，不把四字段清单当作完整入口。",{"type":25,"children":214},[215],{"text":216,"type":29},"本文主路径采用 Windows 11 系统代理：进入“设置 → 网络和 Internet → 代理 → 手动设置代理”，启用代理服务器后填写地址和端口；账号密码按系统认证提示输入。完成后在同一浏览器窗口先验证出口，再测试 Poe 登录，不能用其他浏览器标签的成功代替。",{"type":25,"children":218},[219],{"text":220,"type":29},"网页端是最容易复现的主路径：在实际打开 Poe 的浏览器中配置代理并检查出口 IP。桌面或移动客户端如果没有明确的独立代理入口，应通过系统代理或代理客户端接管；不要凭另一浏览器的检测结果判断 Poe 客户端已经生效。",{"type":25,"children":222},[223],{"text":224,"type":29},"按“代理协议 → 主机 → 端口 → 账号\u002F密码 → 启用代理 → IP 检测”的顺序操作。浏览器代理和系统代理的接管范围可能不同，必须在实际访问 Poe 的同一浏览器中验证出口 IP。",{"type":25,"children":226},[227],{"text":228,"type":29},"登录前记录出口 IP 所在地区、浏览器语言、时区和 Cookie 状态。需要长期保持同一地区时，静态住宅代理 IP 通常比频繁轮换的动态住宅代理 IP 更容易复测，但不能替代正常账号行为。",{"type":31,"level":32,"children":230},[231],{"text":232,"type":29},"如何验证出口 IP 所在地区和登录会话",{"type":25,"children":234},[235],{"text":236,"type":29},"先在实际访问 Poe 的入口中打开 IP 检测页，确认出口 IP 已变化；再打开 Poe，记录登录状态、页面语言、重定向和验证码提示。只改一个变量复测，才能判断差异来自代理 IP、Cookie 还是账号状态。",{"type":31,"level":32,"children":238},[239],{"text":240,"type":29},"Cookie、验证码和访问失败怎么排查",{"type":25,"children":242},[243],{"text":244,"type":29},"1. IP 未变化：检查浏览器是否绕过代理、系统代理是否冲突。\n2. 407：核对代理协议、主机、端口、账号和密码。\n3. 反复登录或验证码：停止重复尝试，检查 Cookie、设备环境、账号状态和请求频率。\n4. 只有 Poe 打不开：对比其他网站，判断是 Poe 地区策略、账号状态还是服务异常。\n5. 401\u002F403\u002F429：分别检查登录认证、权限\u002F地区规则和请求频率\u002F配额。",{"type":25,"children":246},[247],{"text":248,"type":29},"固定一个变量后再复测，例如只更换代理 IP，不要同时更换浏览器、Cookie 和账号。",{"type":250,"children":251},"code",[252],{"text":253,"type":29},"| 表现 | 优先判断 |\n| --- | --- |\n| IP 未变化 | 当前入口没有读取代理配置 |\n| 返回 407 | 代理认证或端口错误 |\n| 反复出现验证码 | Cookie、设备环境、账号状态或操作频率 |\n| 其他网站正常但 Poe 失败 | Poe 服务规则、登录状态或账号层问题 |",{"type":25,"children":255},[256],{"text":257,"type":29},"连续登录只会增加变量。出现重复验证码或相同错误时，应停止尝试并保存出口 IP 所在地区、Cookie 状态、错误时间和页面提示。",{"type":25,"children":259},[260],{"text":261,"type":29},"**能力边界：** 代理 IP 可以改善出口 IP 所在地区和网络路径，但不能替代 Cookie、账号状态、Poe 服务规则或配额。",{"type":31,"level":32,"children":263},[264],{"text":132,"type":29},{"type":25,"children":266},[267],{"text":268,"type":29},"Poe 的网页入口、客户端功能和账号政策可能变化，可参考：",{"type":77,"format":78,"children":270},[271,275,279],{"type":81,"children":272},[273],{"text":274,"type":29},"[Poe 官方帮助中心](https:\u002F\u002Fhelp.poe.com\u002Fhc\u002Fen-us)：核对登录、账号和产品使用问题。",{"type":81,"children":276},[277],{"text":278,"type":29},"[Poe 服务入口](https:\u002F\u002Fpoe.com\u002F)：确认当前页面状态和官方提示。",{"type":81,"children":280},[281],{"text":282,"type":29},"[MDN Cookie 文档](https:\u002F\u002Fdeveloper.mozilla.org\u002Fzh-CN\u002Fdocs\u002FWeb\u002FHTTP\u002FCookies)：了解 Cookie 与登录会话。",{"type":31,"level":32,"children":284},[285],{"text":154,"type":29},{"type":31,"level":21,"children":287},[288],{"text":289,"type":29},"其他网站正常但 Poe 打不开怎么办？",{"type":25,"children":291},[292],{"text":293,"type":29},"说明基础网络和代理 IP 可能已经生效，应继续检查 Cookie、登录状态、账号提示、地区规则和 Poe 服务状态。",{"type":31,"level":21,"children":295},[296],{"text":297,"type":29},"代理配置正确但仍然失败怎么办？",{"type":25,"children":299},[300],{"text":301,"type":29},"保持浏览器、Cookie 和账号不变，把网络层、认证层、账号状态和服务权限分开复测；出现重复验证码时停止继续登录。",{"type":25,"children":303},[304],{"text":305,"type":29},"每次只调整一个变量，并保存出口 IP 所在地区、错误时间和页面提示。浏览器或系统代理尚未配置时，可先查看[代理设置帮助](https:\u002F\u002Fhelp.quanqiudaili.com\u002Fdocs\u002Fproxy-Settings)。",{"source":6,"id":307,"documentId":308,"translationKey":308,"locale":9,"slug":309,"path":310,"_path":310,"title":311,"description":312,"excerpt":312,"image":313,"publishedAt":314,"updatedAt":315,"author":17,"tags":316,"featured":19,"sortOrder":20,"readingTime":21,"bodyType":22,"bodyBlocks":317,"bodyHtml":183},3036,"pv7w1ycsh8d3o5bpw06btrt7","mistral-ai-proxy-web-api-configuration","\u002Fblog\u002Fmistral-ai-proxy-web-api-configuration","Mistral API 代理 IP：curl 与 Python Requests 配置","Mistral AI 代理 IP 配置指南：网页、API 与 Proxy URL，包含 curl、Python 请求、环境变量和错误码排查。","https:\u002F\u002Fcms.quanqiudaili.com\u002Fuploads\u002Flarge_mistral_ai_ip_api_proxy_url_cover_6ef6165455.webp","2026-10-01T14:15:53.732Z","2026-10-01T14:15:53.707Z",[],[318,322,325,329,333,337,341,345,349,353,357,361,365,369,373,377,381,385,389,393,415,421,425,428,432,446,449,453,457,461,465],{"type":25,"children":319},[320],{"text":321,"type":29},"Mistral AI 接入时要分清三件事：代理 IP 提供出口 IP，API Base URL 是服务地址，API Key 是服务认证。先用最小请求验证出口 IP 和认证，再接入 SDK 或业务代码。",{"type":25,"children":323},[324],{"text":204,"type":29},{"type":31,"level":32,"children":326},[327],{"text":328,"type":29},"Mistral API 请求中代理 URL、Base URL 和 API Key 的区别",{"type":25,"children":330},[331],{"text":332,"type":29},"当前正文实际覆盖 curl 与 Python Requests；如果不补网页登录流程和已核验版本的 SDK 示例，标题应理解为 API 配置指南，而不是完整的“网页、API 与 Proxy URL”教程。",{"type":25,"children":334},[335],{"text":336,"type":29},"代理 URL 决定请求经过哪个出口 IP，API Base URL 决定请求发送到哪个服务地址，API Key 则用于验证账户权限。三者位置不同，任何一个填错都会产生不同的错误。",{"type":25,"children":338},[339],{"text":340,"type":29},"请求链路可以理解为：`应用代码 → 代理 URL → Mistral API Base URL → API Key 验证`。代理连接成功只说明网络层可用，仍需等待 API 完成账户认证和模型权限判断。",{"type":31,"level":32,"children":342},[343],{"text":344,"type":29},"curl、Python 与 SDK 配置示例",{"type":25,"children":346},[347],{"text":348,"type":29},"```bash\ncurl --proxy http:\u002F\u002FUSER:PASSWORD@HOST:PORT \\\n-H \"Authorization: Bearer $MISTRAL_API_KEY\" \\\n-H \"Content-Type: application\u002Fjson\" \\\nhttps:\u002F\u002Fapi.mistral.ai\u002Fv1\u002Fmodels\n```",{"type":25,"children":350},[351],{"text":352,"type":29},"如果请求返回 407，先修代理认证；如果返回 401，先修 API Key。不要把代理 URL 当成 Mistral API Base URL，也不要把真实密钥写进代码或 Notebook。",{"type":31,"level":21,"children":354},[355],{"text":356,"type":29},"Python 与 SDK 配置",{"type":25,"children":358},[359],{"text":360,"type":29},"```python\nimport os, requests",{"type":25,"children":362},[363],{"text":364,"type":29},"proxies = {\n'http': os.environ['HTTP_PROXY'],\n'https': os.environ['HTTPS_PROXY'],\n}\nr = requests.get(\n'https:\u002F\u002Fapi.mistral.ai\u002Fv1\u002Fmodels',\nheaders={'Authorization': f\"Bearer {os.environ['MISTRAL_API_KEY']}\"},\nproxies=proxies,\ntimeout=15,\n)\nprint(r.status_code, r.text[:200])\n```",{"type":25,"children":366},[367],{"text":368,"type":29},"模型列表可读不等于模型调用有权限。若要验证实际调用，使用当前账户有权限且成本可控的模型，并记录状态码、耗时和脱敏请求标识；不要把一次成功响应写成所有模型均可调用。",{"type":25,"children":370},[371],{"text":372,"type":29},"```python\npayload = {\n'model': os.environ['MISTRAL_MODEL'],\n'messages': [{'role': 'user', 'content': 'Reply with OK'}],\n'max_tokens': 8,\n}\nresponse = requests.post(\n'https:\u002F\u002Fapi.mistral.ai\u002Fv1\u002Fchat\u002Fcompletions',\nheaders={'Authorization': f\"Bearer {os.environ['MISTRAL_API_KEY']}\"},\njson=payload,\nproxies=proxies,\ntimeout=30,\n)\nprint(response.status_code, response.text[:500])\n```",{"type":31,"level":32,"children":374},[375],{"text":376,"type":29},"模型请求验证和错误码排查",{"type":25,"children":378},[379],{"text":380,"type":29},"先用模型列表或其他轻量请求验证网络和 API Key，再测试实际模型请求。",{"type":25,"children":382},[383],{"text":384,"type":29},"两步验证可以避免把模型名称、请求体或配额错误误判为代理失败。保存脱敏后的状态码、错误类型、响应耗时和请求 ID（如响应中提供），通常比只记录“调用失败”更有排查价值。",{"type":25,"children":386},[387],{"text":388,"type":29},"接入 SDK 时继续使用 SDK 要求的 Base URL 和 API Key；代理只放在 HTTP 客户端层。网页访问、API 请求和服务端转发要分别验证。",{"type":31,"level":21,"children":390},[391],{"text":392,"type":29},"401、403、407、429 和上游错误",{"type":77,"format":78,"children":394},[395,399,403,407,411],{"type":81,"children":396},[397],{"text":398,"type":29},"**401**：API Key 缺失、错误或已失效。",{"type":81,"children":400},[401],{"text":402,"type":29},"**403**：账号权限、地区策略或服务规则。",{"type":81,"children":404},[405],{"text":406,"type":29},"**407**：代理 IP 认证失败。",{"type":81,"children":408},[409],{"text":410,"type":29},"**429**：接口配额、请求频率或并发超过限制。",{"type":81,"children":412},[413],{"text":414,"type":29},"**TLS\u002F超时**：检查代理协议、DNS、地区路径和客户端超时。",{"type":77,"format":78,"children":416},[417],{"type":81,"children":418},[419],{"text":420,"type":29},"**5xx**：检查上游服务状态、中间链路和重试策略，不要无限重试。",{"type":25,"children":422},[423],{"text":424,"type":29},"**能力边界：** 即使代理请求成功，API Key、模型权限、账户配额和服务策略仍需单独满足。",{"type":31,"level":32,"children":426},[427],{"text":132,"type":29},{"type":25,"children":429},[430],{"text":431,"type":29},"Mistral API 路径、SDK 和模型列表可能更新，配置前可核对：",{"type":77,"format":78,"children":433},[434,438,442],{"type":81,"children":435},[436],{"text":437,"type":29},"[Mistral AI API 文档](https:\u002F\u002Fdocs.mistral.ai\u002Fapi\u002F)：确认端点、请求格式和错误响应。",{"type":81,"children":439},[440],{"text":441,"type":29},"[Mistral AI SDK 文档](https:\u002F\u002Fdocs.mistral.ai\u002Fgetting-started\u002Fclients\u002F)：确认当前 SDK 的客户端配置方式。",{"type":81,"children":443},[444],{"text":445,"type":29},"[MDN HTTP Authorization](https:\u002F\u002Fdeveloper.mozilla.org\u002Fzh-CN\u002Fdocs\u002FWeb\u002FHTTP\u002FHeaders\u002FAuthorization)：了解 Authorization 请求头。",{"type":31,"level":32,"children":447},[448],{"text":154,"type":29},{"type":31,"level":21,"children":450},[451],{"text":452,"type":29},"Mistral AI Proxy URL 适合什么场景？",{"type":25,"children":454},[455],{"text":456,"type":29},"适合在服务端或开发环境中为 Mistral API 请求提供出口 IP。它不会替代 API Key、模型权限或接口配额。",{"type":31,"level":21,"children":458},[459],{"text":460,"type":29},"curl 成功但 SDK 请求失败怎么办？",{"type":25,"children":462},[463],{"text":464,"type":29},"说明代理和 API Key 基本可用，应继续检查 SDK 是否读取代理环境变量、Base URL、模型名称、请求体和超时配置。",{"type":25,"children":466},[467],{"text":468,"type":29},"先用 curl 验证代理认证和 API Key，再验证模型列表，最后运行真实模型请求。需要核对代理 IP 的协议、主机、端口和认证字段时，可参考[代理设置帮助](https:\u002F\u002Fhelp.quanqiudaili.com\u002Fdocs\u002Fproxy-Settings)。",{"source":6,"id":470,"documentId":471,"translationKey":471,"locale":9,"slug":472,"path":473,"_path":473,"title":474,"description":475,"excerpt":475,"image":476,"publishedAt":477,"updatedAt":478,"author":17,"tags":479,"featured":19,"sortOrder":20,"readingTime":32,"bodyType":22,"bodyBlocks":480,"bodyHtml":183},3035,"b11ximfj5zgmye3d23zg05fr","google-shopping-scraping-proxy-ip-region-results-access","\u002Fblog\u002Fgoogle-shopping-scraping-proxy-ip-region-results-access","Google Shopping 地区商品结果验证","Google Shopping 数据采集代理 IP 怎么配置？本文说明地区、币种、配送范围、库存和商户信息对商品结果的影响，并给出小样本验证与 403\u002F429 排查步骤。","https:\u002F\u002Fcms.quanqiudaili.com\u002Fuploads\u002Flarge_google_shopping_ip_cover_8a958ded51.webp","2026-10-01T14:15:33.536Z","2026-10-01T14:15:33.521Z",[],[481,485,488,492,496,500,504,508,512,516,520,524,528,532,536,540,544,548,552,555,559,563,567,571,575],{"type":25,"children":482},[483],{"text":484,"type":29},"Google Shopping 的商品、价格和商户结果不只取决于出口地区，还会受到币种、语言、配送地址、库存和采集时间影响。验证代理 IP 时应选择少量商品，固定除出口以外的全部条件，再比较价格、币种、商户与配送信息，避免把库存或实时价格变化误判成地区差异。",{"type":25,"children":486},[487],{"text":204,"type":29},{"type":31,"level":32,"children":489},[490],{"text":491,"type":29},"Google Shopping 的地区结果由哪些变量决定",{"type":25,"children":493},[494],{"text":495,"type":29},"记录国家或地区、语言、币种、配送地区、关键词、排序、分页和请求频率。第一次只选 3—5 个商品或关键词，确认出口地区后再对照商品字段；验证期间不要同时更换币种、配送地址和登录状态。",{"type":250,"children":497},[498],{"text":499,"type":29},"| 任务 | 更合适的代理 IP | 重点记录 |\n| --- | --- | --- |\n| 多地区商品与价格观察 | 动态住宅代理 IP | 出口地区、币种、配送范围、采集时间 |\n| 带商户账号的连续检查 | 静态住宅代理 IP | 账号地区、Cookie、会话和出口一致性 |",{"type":31,"level":32,"children":501},[502],{"text":503,"type":29},"国家、币种、配送地与出口地区如何配合",{"type":25,"children":505},[506],{"text":507,"type":29},"按 HTTP、HTTPS 或 SOCKS5 配置主机、端口、账号和密码，可先参考 [代理 IP 参数与设置说明](https:\u002F\u002Fhelp.quanqiudaili.com\u002Fdocs\u002Fproxy-Settings)，再确认出口地区。建议只对公开网页做 3—5 个商品或关键词的小样本验证：固定国家\u002F地区、语言、币种、配送地区和分页，依次记录商品名称、价格、币种、商户、库存、配送范围、链接和采集时间。连续出现 403、429、验证码或结果异常时立即停止，不扩大样本。",{"type":31,"level":32,"children":509},[510],{"text":511,"type":29},"403、429 和商品结果异常怎么判断",{"type":25,"children":513},[514],{"text":515,"type":29},"403\u002F429 出现时停止扩大采集，先参考 [代理 IP 故障排查中心](https:\u002F\u002Fwww.quanqiudaili.com\u002Fblog\u002Fproxy-ip-troubleshooting-hub) 检查请求频率、分页、Cookie 和平台规则；价格或商户结果不一致时，先核对出口地区、语言、币种、配送地区、库存和采集时间。代理 IP 只能改变网络出口，不能保证库存、配送资格或实时价格一致。",{"type":25,"children":517},[518],{"text":519,"type":29},"涉及公开商品结果采样时，还应查看 [目标网站规则与合规采样](https:\u002F\u002Fwww.quanqiudaili.com\u002Fblog\u002Fproxy-ip-target-site-rules-compliant-sampling)。",{"type":31,"level":32,"children":521},[522],{"text":523,"type":29},"如何设计一组可复核的商品样本",{"type":31,"level":21,"children":525},[526],{"text":527,"type":29},"固定商品和地区条件",{"type":25,"children":529},[530],{"text":531,"type":29},"先固定国家\u002F地区、语言、币种、配送地区和分页，再用一个小样本核对商品名称、价格、商户和库存字段。若要进一步判断时间范围和归一化数据的影响，可对照 [Google Trends 代理 IP 配置指南](https:\u002F\u002Fwww.quanqiudaili.com\u002Fblog\u002Fgoogle-trends-proxy)。",{"type":31,"level":21,"children":533},[534],{"text":535,"type":29},"记录结果并设置停止条件",{"type":25,"children":537},[538],{"text":539,"type":29},"出口 IP 正确但价格或商户变化时，还要考虑库存、配送范围和实时数据变化。需要比较市场参数与搜索结果时，可继续查看 [Bing 搜索代理 IP 配置指南](https:\u002F\u002Fwww.quanqiudaili.com\u002Fblog\u002Fbing)。",{"type":250,"children":541},[542],{"text":543,"type":29},"| 检查项 | 需要记录的内容 |\n| --- | --- |\n| 地区条件 | 国家\u002F地区、语言、币种、配送地区 |\n| 请求条件 | 关键词、分页、排序、请求频率 |\n| 商品结果 | 商品名称、价格、币种、商户、库存、配送范围、链接、采集时间 |",{"type":25,"children":545},[546],{"text":547,"type":29},"Google 搜索结果会受到个性化和搜索位置影响，可查看 [Google 搜索个性化说明](https:\u002F\u002Fsupport.google.com\u002Fwebsearch\u002Fanswer\u002F12410098?hl=en) 与 [Google 搜索位置管理说明](https:\u002F\u002Fsupport.google.com\u002Fwebsearch\u002Fanswer\u002F179386?hl=en)。[Merchant Center 配送设置](https:\u002F\u002Fsupport.google.com\u002Fmerchants\u002Fanswer\u002F6324484?hl=en)只用于解释商家配送字段，不能单独证明消费者端 Shopping 结果。只有官方页面明确说明的设置才应作为确定配置项，无法确认的参数应标为待验证。",{"type":25,"children":549},[550],{"text":551,"type":29},"只有国家、币种、配送地、库存状态和采样时间都已记录，商品结果才适合扩大比较；价格或库存实时变化不能单独证明代理出口有问题。\n需要进行多地区、短会话的商品结果观察时，可进一步评估 [动态住宅代理 IP](https:\u002F\u002Fwww.quanqiudaili.com\u002Fproduct\u002Fdynamic-residential)。",{"type":31,"level":32,"children":553},[554],{"text":154,"type":29},{"type":31,"level":21,"children":556},[557],{"text":558,"type":29},"如何配置并确认 Google Shopping 采集请求已经走代理？",{"type":25,"children":560},[561],{"text":562,"type":29},"先填写主机、端口、账号和密码，再固定地区、语言、币种和分页，用一个最小请求核对出口 IP、商品价格和商户字段。",{"type":31,"level":21,"children":564},[565],{"text":566,"type":29},"商品价格或商户结果不一致时先检查什么？",{"type":25,"children":568},[569],{"text":570,"type":29},"先固定地区、币种、语言、分页和请求频率，再检查 IP 地区、商品库存与平台实时数据是否发生变化。",{"type":31,"level":21,"children":572},[573],{"text":574,"type":29},"什么时候应停止采集？",{"type":25,"children":576},[577],{"text":578,"type":29},"连续出现 403、429、验证码或结果明显异常时停止扩大规模，保留请求参数和错误记录并按平台规则处理。",[580],{"source":6,"id":7,"documentId":8,"translationKey":8,"locale":9,"slug":10,"path":11,"_path":11,"title":12,"description":13,"excerpt":13,"image":14,"publishedAt":15,"updatedAt":16,"author":17,"tags":581,"featured":19,"sortOrder":20,"readingTime":21,"bodyType":22,"bodyBlocks":582,"bodyHtml":183},[],[583,586,589,592,595,598,601,604,607,610,613,616,619,633,636,639,642,645,648,651,654,657,660,663,674,677,680,683,686,689,692,695],{"type":25,"children":584},[585],{"text":28,"type":29},{"type":31,"level":32,"children":587},[588],{"text":35,"type":29},{"type":25,"children":590},[591],{"text":39,"type":29},{"type":25,"children":593},[594],{"text":43,"type":29},{"type":31,"level":32,"children":596},[597],{"text":47,"type":29},{"type":25,"children":599},[600],{"text":51,"type":29},{"type":25,"children":602},[603],{"text":55,"type":29},{"type":25,"children":605},[606],{"text":59,"type":29},{"type":25,"children":608},[609],{"text":63,"type":29},{"type":25,"children":611},[612],{"text":67,"type":29},{"type":25,"children":614},[615],{"text":71,"type":29},{"type":31,"level":21,"children":617},[618],{"text":75,"type":29},{"type":77,"format":78,"children":620},[621,624,627,630],{"type":81,"children":622},[623],{"text":84,"type":29},{"type":81,"children":625},[626],{"text":88,"type":29},{"type":81,"children":628},[629],{"text":92,"type":29},{"type":81,"children":631},[632],{"text":96,"type":29},{"type":25,"children":634},[635],{"text":100,"type":29},{"type":25,"children":637},[638],{"text":104,"type":29},{"type":31,"level":32,"children":640},[641],{"text":108,"type":29},{"type":25,"children":643},[644],{"text":112,"type":29},{"type":31,"level":32,"children":646},[647],{"text":116,"type":29},{"type":25,"children":649},[650],{"text":120,"type":29},{"type":25,"children":652},[653],{"text":124,"type":29},{"type":25,"children":655},[656],{"text":128,"type":29},{"type":31,"level":32,"children":658},[659],{"text":132,"type":29},{"type":25,"children":661},[662],{"text":136,"type":29},{"type":77,"format":78,"children":664},[665,668,671],{"type":81,"children":666},[667],{"text":142,"type":29},{"type":81,"children":669},[670],{"text":146,"type":29},{"type":81,"children":672},[673],{"text":150,"type":29},{"type":31,"level":32,"children":675},[676],{"text":154,"type":29},{"type":31,"level":21,"children":678},[679],{"text":158,"type":29},{"type":25,"children":681},[682],{"text":162,"type":29},{"type":31,"level":21,"children":684},[685],{"text":166,"type":29},{"type":25,"children":687},[688],{"text":170,"type":29},{"type":31,"level":21,"children":690},[691],{"text":174,"type":29},{"type":25,"children":693},[694],{"text":178,"type":29},{"type":25,"children":696},[697],{"text":182,"type":29},null,[],[]]