ExecAllocator పై chromedp యొక్క ProxyServer సెట్ చేయండి
ProxyServer ను కలిగి ఉన్న ExecAllocator నుండి బ్రౌజర్ context సృష్టించండి, ఉద్దేశించిన Chromium ప్రక్రియ దాని proxy ఫ్లాగ్ పొందేలా.
chromedp.ProxyServer అనేది బ్రౌజర్ ప్రారంభ ఎంపిక. Chromium ప్రక్రియను సృష్టించే allocator పై దీన్ని వర్తింపజేయండి:
opts := append(chromedp.DefaultExecAllocatorOptions[:],
chromedp.ProxyServer("http://proxy.example:8080"),
)
allocCtx, cancelAllocator := chromedp.NewExecAllocator(
context.Background(), opts...,
)
defer cancelAllocator()
tabCtx, cancelTab := chromedp.NewContext(allocCtx)
defer cancelTab()
err := chromedp.Run(tabCtx,
chromedp.Navigate("https://www.example.com/"),
)
కోడ్ అనువర్తనంలో ఉన్న ఇప్పటికే ఉన్న ఫంక్షన్లో ఉండాలి, err కోసం సాధారణ లోప నిర్వహణతో. NewContext allocator ను allocCtx నుండి వారసత్వంగా పొందుతుంది. మరొక parent నుండి సృష్టించిన context ఆ ఎంపిక లేకుండా వేరే బ్రౌజర్ను సృష్టించగలదు.
proxy URL ఒక HTTP listener ను సూచిస్తుంది; పబ్లిక్ అభ్యర్థులు HTTP proxy జాబితాలో అందుబాటులో ఉన్నాయి; పేజీ HTTPS గమ్యస్థానంగానే ఉంటుంది. ProxyServer Chromium యొక్క --proxy-server ఫ్లాగ్కు మ్యాప్ అవుతుంది, Go యొక్క net/http proxy కాన్ఫిగరేషన్కు కాదు.
Chromium చేతితో ఇచ్చిన proxy URL లో పొందుపరిచిన వినియోగదారు పేరు మరియు సంకేతపదాన్ని అంగీకరించదు. ప్రామాణీకరించిన endpoint కు మద్దతు ఉన్న బ్రౌజర్ ప్రామాణీకరణ లేదా మధ్యవర్తి ఏర్పాటు అవసరం; ఈ ఫ్లాగ్కు user:password జోడించడం HTTP client URL ప్రామాణీకరణకు సమానం కాదు. Chrome యొక్క CDP ప్రామాణీకరణ ఈవెంట్ ప్రవాహం ఉద్దేశించిన proxy సవాలును నిర్వహించడానికి మద్దతు ఉన్న మార్గాలలో ఒకటి.
బ్రౌజర్ పని పూర్తయ్యే వరకు allocator ను సజీవంగా ఉంచండి. దానిని రద్దు చేయడం కూడా ప్రక్రియ శుభ్రతలో భాగం, అయితే tab రద్దు సంబంధిత బ్రౌజర్ context ను పరిమితం చేస్తుంది.