GBProxies

วิธีใช้ Proxies กับ Selenium

Chrome ใน Selenium ไม่รับ username และ password ใน flag --proxy-server วิธีที่ง่ายที่สุดคือใช้ selenium-wire ซึ่งจัดการการเข้าสู่ระบบให้คุณ

ขั้นตอน

  1. ติดตั้ง selenium-wire ด้วย pip install selenium-wire
  2. ส่ง URL proxy พร้อม username และ password ใน seleniumwire_options
  3. เริ่ม driver และเปิดหน้าปลายทาง
  4. ใช้ session id เพื่อคง IP เดียวตลอดการทดสอบ

ตัวอย่างโค้ด

from seleniumwire import webdriver

proxy = "http://USERNAME-cc-ca:PASSWORD@gw.gbproxies.cc:10000"
driver = webdriver.Chrome(seleniumwire_options={
    "proxy": {"http": proxy, "https": proxy, "no_proxy": "localhost,127.0.0.1"}
})
driver.get("https://api.ipify.org")
print(driver.find_element("tag name", "body").text)
driver.quit()

แทนที่ USERNAME และ PASSWORD ด้วยข้อมูลเข้าสู่ระบบ proxy จากหน้า Proxies ของคอนโซล พอร์ต 10000 คือ residential HTTP; ดูพอร์ตของทุกผลิตภัณฑ์ด้านล่าง

เคล็ดลับ

  • ปิดรูปภาพด้วย Chrome preferences เพื่อประหยัด GB
  • รันหนึ่ง driver ต่อ sticky session

คำถามทั่วไป

ฉันสามารถใช้ Selenium แบบธรรมดาโดยไม่ต้องมีแพ็คเกจเพิ่มเติมได้หรือไม่?

Chrome ต้องการ extension หรือ selenium-wire สำหรับการเข้าสู่ระบบ proxy; Firefox สามารถอ่านข้อมูลรับรองจาก profile ได้

วิธีใช้ Proxies กับ Selenium