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-от жив додека работата на прелистувачот не заврши. Неговото откажување исто така е дел од чистењето на процесот, додека откажувањето на табот го ограничува поврзаниот контекст на прелистувачот.

Поврзани статии