ວິທີຕັ້ງຄ່າ proxy ທີ່ມີການຢືນຢັນຕົວຕົນໃນ Selenium WebDriver
Updated:
ແຟລກ ChromeDriver ມາດຕະຖານ --proxy-server=http://ip:port ຈະບໍ່ສົນໃຈຂໍ້ມູນເຂົ້າສູ່ລະບົບ user:pass ທີ່ໃສ່ມານຳ ແລະ ຈະສະແດງກ່ອງຂໍ້ຄວາມເຂົ້າສູ່ລະບົບຂຶ້ນມາຂັດຈັງຫວະ. ເພື່ອໃຊ້ງານ HTTP(S) proxy ທີ່ມີການຢືນຢັນຕົວຕົນຂອງ VinaProxy ໃນ Selenium ຢ່າງສະດວກ, ໃຫ້ສົ່ງຂໍ້ມູນຢືນຢັນຕົວຕົນຜ່ານ selenium-wire ຫຼື ໂຫຼດສ່ວນຂະຫຍາຍພື້ນຫຼັງ Chrome onAuthRequired ຂະໜາດນ້ອຍ.
http://user:pass@ip:port (selenium-wire / Chrome proxy extension)- 1 IP₫40.000
- 5+ IP₫35.000
- 10+ IP₫25.000
- 20+ IP₫25.000
- 50+ IP₫25.000
- 100+ IP₫25.000
- 200+ IP₫25.000
- 500+ IP₫25.000
- 1000+ IP₫22.000
- 2000+ IP₫20.000
- 1 IP₫75.000
- 3+ IP₫70.000
- 5+ IP₫65.000
- 10+ IP₫60.000
- 50+ IP₫60.000
- 100+ IP₫60.000
- 200+ IP₫60.000
- 500+ IP₫55.000
2 ວິທີທີ່ເຊື່ອຖືໄດ້ໃນການຢືນຢັນຕົວຕົນ proxy ໃນ Selenium
ເລືອກວິທີທີ່ເໝາະສົມກັບພາສາ runtime ແລະ ຕົວຂັບເຄື່ອນບຣາວເຊີຂອງທ່ານ:
| ວິທີການ | ໄວຍາກອນການກຳນົດຄ່າ | ເໝາະສຳລັບ |
|---|---|---|
selenium-wire (Python) | seleniumwire_options={'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}} | ຕິດຕັ້ງໄວທີ່ສຸດສຳລັບ Python; ຮອງຮັບການສະຫຼັບ proxy ໃນລະຫວ່າງເຊດຊັນໄດ້ທັນທີ |
| ສ່ວນຂະຫຍາຍ Chrome Auth | ໂຫຼດສ່ວນຂະຫຍາຍໄຟລ໌ zip ທີ່ຈັດການ chrome.webRequest.onAuthRequired | Selenium ມາດຕະຖານທັງໃນ Python, Java, C#, ແລະ undetected-chromedriver |
| ຍ້າຍໄປໃຊ້ Playwright | browser.newContext({ proxy: { server, username, password } }) | ການຢືນຢັນຕົວຕົນ proxy ແຍກຕາມ context ແບບ native ໂດຍບໍ່ຕ້ອງໃຊ້ສ່ວນຂະຫຍາຍໃດໆ |
ເຄັດລັບເພີ່ມປະສິດທິພາບໃນການດຶງຂໍ້ມູນດ້ວຍ Selenium ຜ່ານ proxy
- ຕັ້ງຄ່າ
options.page_load_strategy = 'eager'ເພື່ອໃຫ້ WebDriver ເຮັດວຽກໄດ້ທັນທີທີ່ DOM ພ້ອມຕອບສະໜອງ ໂດຍບໍ່ຕ້ອງລໍຖ້າຕົວຕິດຕາມພາຍນອກທີ່ຊັກຊ້າ - ໃຊ້
--headless=new(Chrome 109+) ຖ້າເປີດໃຊ້ງານແບບ headless ເພື່ອໃຫ້ສ່ວນຂະຫຍາຍ Chrome ແລະ ການຢືນຢັນຕົວຕົນ proxy ເຮັດວຽກຄືກັນກັບໂໝດປົກກະຕິ - ປິດການສະແດງຜົນຮູບພາບຜ່ານການຕັ້ງຄ່າ Chrome ເມື່ອດຶງຂໍ້ມູນສິນຄ້າສະເພາະຂໍ້ຄວາມ
- ຄວນໃສ່ driver ຂອງທ່ານໄວ້ໃນບລັອກ
try / finally: driver.quit()ສະເໝີ ເພື່ອປ້ອງກັນບໍ່ໃຫ້ເກີດ process ຕົກຄ້າງຂອງ Chromium
ເທື່ອລະຂັ້ນຕອນ
- 1
ຕິດຕັ້ງ selenium-wire
ຣັນ
pip install selenium-wireໃນ virtual environment ຂອງ Python ຂອງທ່ານ. - 2
ກຳນົດ dictionary ສຳລັບ proxy ຂອງ VinaProxy
ຈັດຮູບແບບຂໍ້ມູນຢືນຢັນຕົວຕົນຂອງທ່ານເປັນ
sw_options = {'proxy': {'http': 'http://user:pass@ip:port', 'https': 'http://user:pass@ip:port'}}. - 3
ເປີດໃຊ້ງານ webdriver.Chrome ພ້ອມກັບ seleniumwire_options
ກຳນົດຄ່າເລີ່ມຕົ້ນ
driver = webdriver.Chrome(seleniumwire_options=sw_options). - 4
ກວດສອບ IP address ປາຍທາງ
ໄປທີ່
driver.get('https://vinaproxy.com/api/my-ip')ແລະ ກວດສອບວ່າການຕອບກັບ JSON ສະແດງ IP proxy ຂອງທ່ານ.
ຄຳຖາມທີ່ຖາມເລື້ອຍໆ
ເປັນຫຍັງ `--proxy-server=http://user:pass@ip:port` ຈຶ່ງບໍ່ສາມາດໃຊ້ງານໄດ້ໃນ ChromeOptions?
Chromium ຕັ້ງໃຈຕັດ user:pass@ ອອກຈາກແຟລກ --proxy-server ໃນ command-line. ການໃຊ້ selenium-wire, ສ່ວນຂະຫຍາຍ onAuthRequired, ຫຼື Playwright ຈະຊ່ວຍແກ້ໄຂບັນຫານີ້ໄດ້ຢ່າງຮຽບຮ້ອຍ.
ຂ້ອຍສາມາດສະຫຼັບ proxy ໂດຍບໍ່ຕ້ອງເປີດ Chrome ໃໝ່ໃນ selenium-wire ໄດ້ບໍ່?
ໄດ້. ທ່ານສາມາດກຳນົດ dictionary ໃໝ່ໃຫ້ກັບ driver.proxy = {'http': 'http://...', 'https': 'http://...'} ໃນເວລາໃດກໍໄດ້ ເພື່ອສະຫຼັບ upstream proxy ທີ່ກຳລັງໃຊ້ງານຢູ່ໄດ້ທັນທີ.
ສ່ວນຂະຫຍາຍ proxy ຂອງ Chrome ສາມາດເຮັດວຽກໃນໂໝດ headless ໄດ້ບໍ່?
ໄດ້, ຕາບໃດທີ່ທ່ານໃສ່ --headless=new ແທນແຟລກ --headless ແບບເກົ່າ.
ໃຊ້ງານ Selenium WebDriver ໃນລະດັບໃຫຍ່ດ້ວຍ static IP ແບບບໍ່ຈຳກັດປະລິມານ
Dedicated IPv4 ແລະ Static ISP proxy ພ້ອມໃຊ້ງານທັນທີໃນ 7 ປະເທດ.
ຊື້ Proxy ສຳລັບ Selenium