របៀបកំណត់រចនាសម្ព័ន្ធ proxy ក្នុង Playwright (Browser & Per-Context Auth)
Updated:
Playwright គាំទ្រការផ្ទៀងផ្ទាត់ proxy HTTP ដើម (server, username, password) ដោយផ្ទាល់នៅលើ Chromium, Firefox និង WebKit ដោយមិនចាំបាច់មាន extension កម្មវិធីរុករក ឬ wrapper ភាគីទីបីឡើយ។ កាន់តែពិសេសជាងនេះទៅទៀត មុខងារ Per-Context Proxy របស់ Playwright អនុញ្ញាតឱ្យ instance កម្មវិធីរុករកតែមួយអាចដំណើរការសម័យ BrowserContext ដាច់ដោយឡែករាប់សិប ដែលនីមួយៗភ្ជាប់ទៅនឹង IP ឋិតវន្ត VinaProxy ផ្ទាល់ខ្លួន។
proxy={ server: 'http://ip:port', username: 'user', password: 'pass' }- 1 IP40,000₫
- 5+ IP35,000₫
- 10+ IP25,000₫
- 20+ IP25,000₫
- 50+ IP25,000₫
- 100+ IP25,000₫
- 200+ IP25,000₫
- 500+ IP25,000₫
- 1000+ IP22,000₫
- 2000+ IP20,000₫
- 1 IP50,000₫
- 3+ IP40,000₫
- 5+ IP40,000₫
- 10+ IP32,000₫
- 50+ IP30,000₫
- 100+ IP30,000₫
- 200+ IP30,000₫
- 500+ IP25,000₫
ការកំណត់រចនាសម្ព័ន្ធ proxy object ក្នុង Playwright
បញ្ជូន object កំណត់រចនាសម្ព័ន្ធ proxy ជាសកល (globally) ក្នុង chromium.launch({ proxy }) ឬតាមសម័យនីមួយៗក្នុង browser.newContext({ proxy }):
| Key របស់ Playwright | ទម្រង់តម្លៃ | កំណត់សម្គាល់បច្ចេកទេស |
|---|---|---|
server | 'http://ip:port' | Host និង port ប៉ុណ្ណោះ ដោយមានបុព្វបទ http:// |
username | 'user' | ឈ្មោះអ្នកប្រើប្រាស់ proxy VinaProxy របស់អ្នក |
password | 'pass' | ពាក្យសម្ងាត់ proxy VinaProxy របស់អ្នក (ដំណើរការដោយស្វ័យប្រវត្តិតាម 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 របស់អ្នក ដើម្បីឱ្យ header និង JSIntlAPI ត្រូវគ្នានឹងប្រទេសរបស់ proxy - បោះបង់សំណើ (request) រូបភាព និងពុម្ពអក្សរដែលមិនចាំបាច់ជាមួយ
page.route()ដើម្បីបង្កើនល្បឿនទាញយកទិន្នន័យ (scraping throughput)
មួយជំហានម្តងៗ
- 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()ហើយស្នើសុំទៅកាន់https://vinaproxy.com/api/my-ip។
សំណួរដែលសួរញឹកញាប់
ហេតុអ្វីបានជា Playwright បង្ហាញកំហុស 'Proxy is only supported when browser is launched with a proxy'?
នៅលើ Windows និង macOS កម្មវិធី Chromium តម្រូវឱ្យមាន global launch proxy flag មុនពេលអនុញ្ញាតឱ្យ 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) ត្រូវបានគិតថ្លៃតាមទំហំប្រើប្រាស់ដែរឬទេ នៅពេលដំណើរការកម្មវិធីរុករក headless Playwright?
ទេ មិនគិតទេ។ គម្រោង VinaProxy Dedicated IPv4 និង Static ISP ទាំងអស់រួមបញ្ចូលទំហំចរាចរណ៍ (traffic) ប្រចាំខែដោយគ្មានដែនកំណត់។
ពង្រីក Playwright BrowserContexts ជាមួយ IP ឋិតវន្ត dedicated
Proxy HTTP(S) គ្មានដែនកំណត់ភ្លាមៗនៅទូទាំង 7 ទីតាំងសកល។
ទិញ Playwright Proxies