Requests-HTML 0.10.0 da session.get() Requests dan foydalanadi, response.html.render() esa Pyppeteer ni ishga tushirib, odatda Chromium ni yana sahifa URL manziliga yo‘naltiradi. Muvaffaqiyatli birinchi javob brauzer yo‘nalishini belgilamaydi.

Autentifikatsiyasiz HTTP proksisidan foydalanadigan mavjud mos eski muhit uchun:

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()

Ommaviy sahifa misolida HTTP proksilar ro‘yxati proxy_url uchun nomzodlar beradi. browser_args sessiyaning ommaviy konstruktor kiritmasi. Requests ning proxies lug‘ati bu Chromium argumentlarini to‘ldirmaydi.

Requests ning socks5h:// yozilishini ham Chromium ga shunchaki ko‘chirib bo‘lmaydi. Chromium socks5:// ni qabul qiladi, SOCKS5 manzil nomlarini proksi orqali hal qiladi va SOCKS5 foydalanuvchi nomi/parol autentifikatsiyasini qo‘llab-quvvatlamaydi.

render(reload=False) sahifa URL manziliga o‘tish o‘rniga mavjud HTML ni brauzerga beradi. Skriptlar va qo‘shimcha resurslar hali ham so‘rov yuborishi mumkin. Bu javobni ataylab ko‘rsatish kerak bo‘lganda foydali, lekin Requests ulanishini brauzer transportiga aylantirmaydi.

O'xshash maqolalar