Поставете ProxyServer на chromedp на ExecAllocator
Создајте го контекстот на прелистувачот од ExecAllocator што го носи ProxyServer, за предвидениот процес Chromium да го добие своето proxy знаме.
chromedp.ProxyServer е опција за стартување на прелистувачот. Применете ја на allocator-от што го создава процесот Chromium:
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. Контекст создаден од друг родител може да создаде друг прелистувач без таа опција.
Proxy URL-от означува HTTP слушател; јавните кандидати се достапни во списокот со HTTP proxy; страницата останува HTTPS дестинација. ProxyServer се пресликува на знамето --proxy-server на Chromium, а не на proxy конфигурацијата net/http во Go.
Chromium не прифаќа корисничко име и лозинка вградени во рачно зададен proxy URL. Автентицираната крајна точка бара поддржана автентикација во прелистувачот или посредничко решение; додавањето user:password на ова знаме не е еднакво на URL автентикација во HTTP клиент. Текот на CDP настани за автентикација во Chrome е еден од поддржаните начини за справување со предвидениот proxy предизвик.
Држете го allocator-от жив додека работата на прелистувачот не заврши. Неговото откажување исто така е дел од чистењето на процесот, додека откажувањето на табот го ограничува поврзаниот контекст на прелистувачот.