ວິທີຕັ້ງຄ່າ proxy ໃນ Playwright (ການຢືນຢັນຕົວຕົນ Browser & Per-Context)
Updated:
Playwright ຮອງຮັບການຢືນຢັນຕົວຕົນ HTTP proxy ແບບ native (server, username, password) ໄດ້ທັນທີໃນ Chromium, Firefox, ແລະ WebKit ໂດຍບໍ່ຈຳເປັນຕ້ອງໃຊ້ສ່ວນຂະຫຍາຍບຣາວເຊີ ຫຼື wrapper ພາຍນອກ. ຍິ່ງໄປກວ່ານັ້ນ, ຟີເຈີ Per-Context Proxy ຂອງ Playwright ຍັງຊ່ວຍໃຫ້ browser instance ດຽວສາມາດເປີດຫຼາຍສິບ session ຂອງ BrowserContext ທີ່ແຍກອອກຈາກກັນ ໂດຍແຕ່ລະ session ຜູກກັບ static IP ຂອງ VinaProxy ຂອງຕົນເອງ.
proxy={ server: 'http://ip:port', username: 'user', password: 'pass' }- 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₫50.000
- 3+ IP₫40.000
- 5+ IP₫40.000
- 10+ IP₫32.000
- 50+ IP₫30.000
- 100+ IP₫30.000
- 200+ IP₫30.000
- 500+ IP₫25.000
ການກຳນົດຄ່າ proxy object ໃນ Playwright
ສົ່ງ object ການກຳນົດຄ່າ proxy ແບບ global ໃນ chromium.launch({ proxy }) ຫຼື ແຍກຕາມແຕ່ລະ session ໃນ browser.newContext({ proxy }):
| Playwright Key | ຮູບແບບຄ່າ | ໝາຍເຫດທາງເຕັກນິກ |
|---|---|---|
server | 'http://ip:port' | ສະເພາະ Host ແລະ port ເທົ່ານັ້ນ, ໂດຍມີ http:// ຢູ່ທາງໜ້າ |
username | 'user' | ຊື່ຜູ້ໃຊ້ proxy ຂອງ VinaProxy ຂອງທ່ານ |
password | 'pass' | ລະຫັດຜ່ານ proxy ຂອງ VinaProxy ຂອງທ່ານ (ຈັດການແບບ native ເມື່ອພົບ HTTP 407) |
bypass | 'localhost,127.0.0.1' | ລາຍຊື່ host ທີ່ຂັ້ນດ້ວຍຈຸດສຳລັບຂ້າມ proxy (ເລືອກໃສ່ໄດ້) |
ການໃຊ້ງານ BrowserContexts ແບບຫຼາຍ IP ຢ່າງມີປະສິດທິພາບ
- ໃນ Windows ແລະ macOS, ໃຫ້ສົ່ງ placeholder
proxy: { server: 'http://per-context' }ໄວ້ໃນchromium.launch()ທຸກຄັ້ງທີ່ທ່ານຕ້ອງການ overrideproxyໃນແຕ່ລະການຮຽກໃຊ້browser.newContext() - ກຳນົດ
timezoneIdແລະlocaleໃນbrowser.newContext()ພ້ອມກັບ proxy ຂອງທ່ານ ເພື່ອໃຫ້ headers ແລະ JSIntlAPIs ກົງກັບປະເທດຂອງ proxy - ຍົກເລີກ request ຮູບພາບ ແລະ font ທີ່ບໍ່ຈຳເປັນດ້ວຍ
page.route()ເພື່ອເພີ່ມຄວາມໄວໃນການ scrape ຂໍ້ມູນ
ເທື່ອລະຂັ້ນຕອນ
- 1
ດຶງຂໍ້ມູນ ip, port, username, ແລະ password
ຄັດລອກຂໍ້ມູນເຂົ້າສູ່ລະບົບ
ip:port:user:passຂອງທ່ານຈາກແດຊບອດ VinaProxy. - 2
ສົ່ງ proxy object ໄປຍັງ newContext()
ຮຽກໃຊ້
const context = await browser.newContext({ proxy: { server: 'http://ip:port', username: 'user', password: 'pass' } }). - 3
ປັບ timezoneId ແລະ locale ໃຫ້ກົງກັນ
ລະບຸ
timezoneIdແລະlocaleໃຫ້ກົງກັບທີ່ຕັ້ງ proxy ຂອງທ່ານ (ເຊັ່ນ:America/New_YorkຫຼືAsia/Ho_Chi_Minh). - 4
ກວດສອບ IP ປາຍທາງໃນໜ້າໃໝ່
ເປີດ
const page = await context.newPage()ແລະ ສົ່ງ request ໄປຫາhttps://vinaproxy.com/api/my-ip.
ຄຳຖາມທີ່ຖາມເລື້ອຍໆ
ເປັນຫຍັງ Playwright ຈຶ່ງແຈ້ງເຕືອນ 'Proxy is only supported when browser is launched with a proxy'?
ໃນ Windows ແລະ macOS, Chromium ຕ້ອງການ flag global launch proxy ກ່ອນທີ່ຈະອະນຸຍາດໃຫ້ override ແບບ per-context. ໃຫ້ເປີດບຣາວເຊີດ້ວຍ chromium.launch({ proxy: { server: 'http://per-context' } }) ແລ້ວຈຶ່ງສົ່ງ proxy ຕົວຈິງໄປຍັງແຕ່ລະ browser.newContext({ proxy }).
proxy ຂອງ VinaProxy ສາມາດໃຊ້ງານກັບ Playwright Firefox ແລະ WebKit ໄດ້ຄືກັນບໍ?
ໄດ້. syntax proxy: { server, username, password } ແບບດຽວກັນນີ້ ສາມາດໃຊ້ງານໄດ້ກັບ Chromium, Firefox, ແລະ WebKit ທັງໃນ Node.js ແລະ Python.
ມີການຈຳກັດປະລິມານ bandwidth ບໍເມື່ອໃຊ້ງານ Playwright browser ແບບ headless?
ບໍ່. ທຸກແພັກເກດ Dedicated IPv4 ແລະ Static ISP ຂອງ VinaProxy ລວມມີ traffic ປະຈຳເດືອນແບບບໍ່ຈຳກັດ.
ຂະຫຍາຍຂະໜາດ Playwright BrowserContexts ດ້ວຍ dedicated static IP
proxy HTTP(S) ແບບບໍ່ຈຳກັດພ້ອມໃຊ້ງານທັນທີໃນ 7 ສະຖານທີ່ທົ່ວໂລກ.
ຊື້ Playwright Proxies