Socks5Proxy

คู่มือการเชื่อมต่อพร็อกซี่ วิธีการตั้งค่า SOCKS5/HTTP ตามภาษาและเครื่องมือ

คู่มือการเชื่อมต่อ Socks5Proxy อธิบายวิธีการเชื่อมต่อ SOCKS5 และ HTTP Proxy กับเครื่องมือ 7 ชนิด ได้แก่ Python requests, Node.js, cURL, Selenium, Puppeteer, Playwright และ Scrapy พร้อมรหัสที่ใช้งานได้จริง

Python requestsสรุปวิธีการเชื่อมต่อ HTTP proxy และ SOCKS5 proxy (socks5h) ใน Python requests พร้อมการยืนยันตัวตน การหมุนเวียนรายการ การลองใหม่ และการจัดการเซสชัน ด้วยโค้ดจริงNode.jsสรุปวิธีการเชื่อมต่อ HTTP proxy ผ่าน ProxyAgent และ SOCKS5 proxy ผ่าน socks-proxy-agent ใน Node.js fetch(undici) พร้อมโค้ดหมุนเวียนรายการcURLเราได้สรุปวิธีการเชื่อมต่อ HTTP Proxy (-x) และ SOCKS5 Proxy (--socks5-hostname) ด้วย cURL การตรวจสอบสิทธิ์ การวัดเวลาตอบสนอง และสคริปต์ตรวจสอบรายการแบบกลุ่มSeleniumสรุปวิธีการเชื่อมต่อ HTTP และ SOCKS5 Proxy กับ Chrome และ Firefox ใน Selenium, เหตุผลและวิธีการตั้งค่าการรับรอง IP ใน Chrome และการเรียกใช้เบราว์เซอร์หลายตัวพร้อมกันPuppeteerสรุปวิธีการเชื่อมต่อ HTTP/SOCKS5 proxy ด้วย --proxy-server ใน Puppeteer และส่งชื่อผู้ใช้กับรหัสผ่านผ่าน page.authenticate พร้อมการแยก IP ตามเบราว์เซอร์Playwrightสรุปวิธีการเชื่อมต่อ HTTP/SOCKS5 proxy ด้วยตัวเลือก proxy ใน Playwright วิธีการใช้ IP ต่างกันสำหรับแต่ละ context และตัวอย่าง Python กับ Node.jsScrapyสรุปวิธีการเชื่อมต่อพร็อกซีใน Scrapy โดยใช้ HttpProxyMiddleware และ meta proxy, middleware ดาวน์โหลดเพื่อหมุนเวียน IP ในแต่ละคำขอ และการตั้งค่าความเร็ว

ต้องใช้ข้อมูลอะไรบ้างในการเชื่อมต่อพร็อกซี่?

แต่ละบรรทัดพร็อกซี่ประกอบด้วยที่อยู่ IP พอร์ต HTTP พอร์ต SOCKS5 ชื่อผู้ใช้ และรหัสผ่าน คุณสามารถดูรายการในหน้าพร็อกซี่ของฉันในแดชบอร์ดหรือดาวน์โหลดในรูปแบบที่ต้องการ และยังสามารถรับรายการเดียวกันผ่าน API ได้

ตัวอย่างทั้งหมดในคู่มือนี้ใช้ IP 198.51.100.23 พอร์ต HTTP 8000 พอร์ต SOCKS5 1080 username spx_user และ password spx_pass 198.51.100.0/24 เป็นที่อยู่ที่กำหนดไว้สำหรับเอกสาร ดังนั้นจะไม่สามารถเชื่อมต่อได้จริง โปรดเปลี่ยนเป็นค่าจากรายการ Proxy ของคุณ

การรับรองความถูกต้องมีสองวิธี: การส่งชื่อผู้ใช้และรหัสผ่านพร้อมกัน หรือการลงทะเบียนที่อยู่ IPv4 ของเซิร์ฟเวอร์ของคุณสูงสุด 10 ที่อยู่ในแดชบอร์ดและเข้าถึงด้วย ip:port โดยไม่ต้องใช้รหัสผ่าน การรับรองความถูกต้องด้วย IP จะสะดวกในเครื่องมือที่ไม่รับรหัสผ่าน (เช่น อาร์กิวเมนต์การรัน Chrome)

รายการค่าตัวอย่างคำอธิบาย
IP198.51.100.23ที่อยู่เซิร์ฟเวอร์พร็อกซี่
HTTP Port8000การเชื่อมต่อ HTTP และ HTTPS(CONNECT)
SOCKS5 Port1080SOCKS5 TCP Connection
ชื่อผู้ใช้spx_userการยืนยันตัวตนด้วยชื่อผู้ใช้และรหัสผ่าน
รหัสผ่านspx_passการยืนยันตัวตนด้วยชื่อผู้ใช้และรหัสผ่าน

จะเชื่อมต่อด้วย HTTP หรือ SOCKS5 ดี?

งานส่วนใหญ่ที่ส่งคำขอไปยังหน้าเว็บและ API สามารถทำได้ผ่านพอร์ต HTTP ที่อยู่ HTTPS ก็จะถูกส่งผ่านในรูปแบบที่เข้ารหัสด้วยวิธี CONNECT โดยที่ Proxy จะไม่เปลี่ยนแปลงเนื้อหา

SOCKS5 สามารถส่งผ่านการเชื่อมต่อ TCP ที่ไม่ใช่ HTTP และอนุญาตให้ตรวจสอบชื่อโดเมนทางฝั่งพร็อกซี เพื่อให้คำขอ DNS ของเซิร์ฟเวอร์ของคุณไม่รั่วไหลออกไปภายนอก สำหรับ Python ให้ใช้ socks5h และสำหรับ cURL ให้ใช้ --socks5-hostname เพื่อให้พร็อกซีตรวจสอบโดเมน

จะรับรายการผ่านโค้ดได้อย่างไร?

สร้างคีย์ API ในหน้าคีย์ API ของแดชบอร์ดและแสดงเพียงครั้งแรกเท่านั้น เก็บไว้ในที่ปลอดภัย ใส่คีย์ในส่วนหัว Authorization: Bearer ในทุกคำขอ ตัวอย่างโค้ดด้านล่างรับรายการ SOCKS5 ในรูปแบบ user:pass@ip:port ด้วย 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: proxy ตามเบราว์เซอร์และ context
  • Scrapy: ใช้ meta proxy และ middleware หมุนเวียนสำหรับแต่ละคำขอ

ควรเลือกรูปแบบรายการใด?

แต่ละเครื่องมือรองรับรูปแบบที่แตกต่างกัน ดังนั้นคุณสามารถเลือกรูปแบบได้เมื่อดาวน์โหลดรายการไลบรารีส่วนใหญ่รองรับรูปแบบที่อยู่ (http://user:pass@ip:port หรือ socks5://user:pass@ip:port) โดยตรง สำหรับโปรแกรมที่มีช่องตั้งค่าแยกเป็น IP, port, username, password รูปแบบ ip:port:user:pass จะช่วยให้แยกข้อมูลได้ง่าย

หากใช้การรับรอง IP คุณสามารถเลือกรูปแบบ ip:port ได้ รูปแบบ 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 Library
ip:port198.51.100.23:8000การรับรอง IP อาร์กิวเมนต์การรันเบราว์เซอร์
CSVip,http_port,socks_port,user,pass,countryการคำนวณตาราง, เอกสารการจัดการ

จะเก็บข้อมูลพร็อกซี่อย่างปลอดภัยได้อย่างไร?

อย่าเก็บชื่อผู้ใช้ รหัสผ่าน และคีย์ API ของพร็อกซี่ใน repository ให้ใช้ตัวแปรสภาพแวดล้อมหรือที่เก็บความลับแทน หากเผลออัปโหลดไปแล้ว คุณสามารถสร้างคีย์ API ใหม่ในแดชบอร์ดเพื่อทำให้คีย์เดิมใช้งานไม่ได้ทันที

หากเซิร์ฟเวอร์มี IP คงที่ การใช้ IP authorization จะปลอดภัยที่สุด แม้ว่ารายชื่อจะรั่วไหล การเชื่อมต่อจาก IP ที่ไม่ได้ลงทะเบียนก็จะไม่สามารถทำได้ คุณสามารถเพิ่ม IP ที่อนุญาตได้สูงสุด 10 รายการและเปลี่ยนแปลงได้ตลอดเวลา

หากมีสมาชิกทีมหลายคน การให้แต่ละคนรับรายการผ่าน API ใช้งานจะจัดการง่ายกว่าการแชร์ไฟล์รายการในโฟลเดอร์ร่วมกัน และยังช่วยให้ตรวจสอบบันทึกเมื่อเกิดปัญหา

ต้องตรวจสอบอะไรเมื่อเชื่อมต่อไม่ได้?

ทดสอบด้วย cURL ก่อนหนึ่งบรรทัดเพื่อตรวจสอบว่าพร็อกซี่ตอบสนองหรือไม่ การตอบสนอง 407 หมายถึงชื่อผู้ใช้หรือรหัสผ่านไม่ถูกต้อง หากใช้การยืนยัน IP ให้ตรวจสอบว่า IP ของเซิร์ฟเวอร์ที่ส่งคำขออยู่ในรายการที่ลงทะเบียนหรือไม่ หากการเชื่อมต่อหมดเวลา ให้ตรวจสอบพอร์ตอีกครั้ง (เช่น HTTP 8000, SOCKS5 1080 ซึ่งอาจมีค่าต่างกันในแต่ละบรรทัด)

หากยังไม่สามารถแก้ไขได้ คุณสามารถติดต่อฝ่ายสนับสนุนลูกค้าผ่านแดชบอร์ด โปรดระบุแถวพร็อกซี่ที่ใช้ เครื่องมือ และข้อความผิดพลาดเพื่อให้เราตรวจสอบได้เร็วขึ้น

คู่มือการเชื่อมต่อพร็อกซี่ การตั้งค่า Python/Node.js/Selenium | Socks5Proxy