A Requests-HTML 0.10.0-ban a session.get() a Requests-et használja, míg a response.html.render() elindítja a Pyppeteert, és általában újra a Chromiumot navigálja az oldal URL-jére. Egy sikeres első válasz nem rögzíti a böngésző útvonalát.

Egy meglévő, kompatibilis régi környezethez, amely hitelesítés nélküli HTTP-proxyt használ:

from requests_html import HTMLSession

proxy_url = 'http://proxy.example:8080'
session = HTMLSession(browser_args=[
    '--proxy-server=' + proxy_url,
])
try:
    response = session.get(
        'https://www.example.org/',
        proxies={'https': proxy_url},
        timeout=20,
    )
    response.html.render(timeout=20)
    rendered = response.html.html
finally:
    session.close()

A nyilvános oldal példájában a HTTP-proxylista kínál jelölteket a proxy_url számára. A browser_args a munkamenet nyilvános konstruktor-bemenete. A Requests proxies szótára nem tölti ki ezeket a Chromium-argumentumokat.

A Requests socks5h:// írásmódja sem másolható egyszerűen a Chromiumba. A Chromium elfogadja a socks5:// formát, a SOCKS5 célneveket a proxyn keresztül oldja fel, és nem támogatja a SOCKS5 felhasználónév/jelszó hitelesítését.

A render(reload=False) a meglévő HTML-t adja át a böngészőnek ahelyett, hogy az oldal URL-jére navigálna. A szkriptek és az alerőforrások továbbra is küldhetnek kéréseket. Akkor hasznos, ha ezt a választ szándékosan kell renderelni, de nem teszi a Requests-kapcsolatot a böngésző szállítási csatornájává.

Kapcsolódó cikkek