Socks5Proxy

代理連接指南:各語言與工具的SOCKS5/HTTP配置方法

Socks5Proxy連接指南用實際運行的代碼說明了Python requests、Node.js、cURL、Selenium、Puppeteer、Playwright、Scrapy七種工具配置SOCKS5和HTTP代理的方法。

Python requests整理咗Python requests連接HTTP代理同SOCKS5代理(socks5h)嘅方法,包括認證、列表輪換、重試、會話管理等實際代碼。Node.js整理咗Node.js fetch(undici)用ProxyAgent連接HTTP代理、用socks-proxy-agent連接SOCKS5代理同列表輪換代碼嘅方法。cURL整理咗使用cURL連接HTTP代理(-x)及SOCKS5代理(--socks5-hostname)嘅方法、認證、響應時間測量及批量檢查列表腳本。Selenium整理Selenium中為Chrome和Firefox配置HTTP·SOCKS5代理的方法、Chrome使用IP認證的原因與設置,以及多瀏覽器並行運行。Puppeteer整理咗Puppeteer用--proxy-server連接HTTP·SOCKS5代理、用page.authenticate傳用戶名同密碼、按瀏覽器分離IP嘅方法。Playwright整理咗Playwright用proxy選項連接HTTP·SOCKS5代理、每個上下文用唔同IP嘅方法,同Python、Node.js示例。Scrapy整理Scrapy中使用HttpProxyMiddleware和meta proxy連接代理的方法、為每個請求輪換IP的下載器中間件,以及速度設置。

連接代理需要哪些信息?

每行代理包含IP地址、HTTP端口、SOCKS5端口、用戶名和密碼。可在控制台「我的代理」頁面查看列表或下載指定格式,也可通過API獲取相同列表。

本指南所有範例使用IP 198.51.100.23、HTTP端口8000、SOCKS5端口1080、帳號spx_user與密碼spx_pass。注意198.51.100.0/24為文檔專用保留IP,實際使用時請替換為您的代理清單真實值。

有兩種驗證方式:發送用戶名同密碼,或在儀表板中註冊最多10個伺服器嘅IPv4地址,僅通過ip:port連接嘅IP驗證。對於無法接收密碼嘅工具(例如Chrome啟動參數),IP驗證更方便。

項目示例值說明
IP198.51.100.23代理伺服器地址
HTTP 端口8000HTTP 與 HTTPS(CONNECT) 連接
SOCKS5 端口1080SOCKS5 TCP 連接
用戶名spx_user用戶名·密碼驗證
密碼spx_pass用戶名·密碼驗證

使用 HTTP 還是 SOCKS5 連接?

多數網頁與API請求任務使用HTTP端口即可。HTTPS網址同樣透過CONNECT加密傳輸,代理不會修改內容。

SOCKS5不僅能傳輸HTTP連接,還能傳輸TCP連接,並可讓代理端進行域名解析。Python使用socks5h,cURL使用--socks5-hostname,這樣您伺服器的DNS請求就不會外洩。每個IP都有兩個端口,只需選擇您的工具支持的方式即可。

如何通過代碼獲取並使用列表?

API密鑰於控制台API密鑰頁面創建,僅首次顯示,請妥善保存。所有請求需包含Authorization: Bearer頭部。以下代碼為以user:pass@ip:port格式獲取SOCKS5列表的Python示例。各指南將繼續說明如何將此列表連接至工具。

import requests

API = "https://socks5proxy.io/api/v1"
KEY = "YOUR_API_KEY"

# Download the proxy list as plain text, one proxy per line
r = requests.get(
    API + "/proxies/download",
    params={"format": "user:pass@ip:port", "protocol": "socks5"},
    headers={"Authorization": "Bearer " + KEY},
    timeout=30,
)
r.raise_for_status()
proxies = [line.strip() for line in r.text.splitlines() if line.strip()]
print(len(proxies), "proxies loaded")

應從哪篇指南開始閱讀?

選擇符合使用語言及工具的指南。所有指南包含連接確認方法、錯誤排查及IP分配技巧。

  • Python requests: 最簡單嘅HTTP·SOCKS5連接同列表輪換
  • Node.js: undici ProxyAgent(HTTP)同socks-proxy-agent(SOCKS5)
  • cURL:命令行中確認連接及測量響應時間
  • Selenium:Chrome與IP認證,Firefox設置
  • Puppeteer: --proxy-server同page.authenticate
  • Playwright: 瀏覽器同上下文獨立代理
  • Scrapy:為每個請求使用meta proxy與輪換中間件

應該選擇哪種清單格式?

不同工具接受的格式不同,下載列表時可選擇格式。大多數庫直接接受地址格式(http://user:pass@ip:port或socks5://user:pass@ip:port)。設置欄位分為IP、端口、用戶名、密碼的程序可使用ip:port:user:pass格式,方便拆分輸入。

選擇 ip:port 格式即可使用 IP 授權。CSV 格式便於導入試算表或管理文件。可分別下載 HTTP 與 SOCKS5 端口列表。

格式示例適用場景
ip:port:user:pass198.51.100.23:8000:spx_user:spx_pass分欄設置頁面
user:pass@ip:portspx_user:spx_pass@198.51.100.23:8000代碼中組裝地址
http://user:pass@ip:porthttp://spx_user:spx_pass@198.51.100.23:8000requests, cURL, Scrapy
socks5://user:pass@ip:portsocks5://spx_user:spx_pass@198.51.100.23:1080SOCKS5 庫
ip:port198.51.100.23:8000IP 授權、瀏覽器啟動參數
CSVip,http_port,socks_port,user,pass,country表格計算與管理文件

如何安全存儲代理信息?

切勿將代理用戶名、密碼和API密鑰提交到代碼庫,應存儲在環境變量或密鑰管理工具中。若意外提交,請立即在控制台重新生成API密鑰使舊密鑰失效。

如果伺服器是固定 IP,使用 IP 授權最安全。即使列表外洩,未經授權的 IP 也無法連接。最多可添加 10 個授權 IP,隨時可以更改。

如果團隊成員較多,與其將列表文件放在共享文件夾,不如讓每位成員通過API獲取,這樣管理更輕鬆。下載列表的記錄也會保留,方便出現問題時查詢。

連接失敗時需要檢查什麼?

先用cURL測試單行指令確認代理是否響應。407錯誤代表帳號密碼錯誤,若使用IP授權請確認請求服務器IP已加入白名單。連接超時請檢查端口(如HTTP 8000與SOCKS5 1080每行不同)。

若仍未能解決,可透過控制台的客戶服務查詢。請提供使用的行號、工具及錯誤訊息,以便快速跟進。

代理連接指南:Python/Node.js/Selenium設置 | Socks5Proxy