Requests-HTML 0.10.0: mengonfigurasi proxy Chromium untuk render()
Konfigurasikan argumen peluncuran Chromium serta Requests ketika halaman Requests-HTML lama berhasil sebelum render() dan gagal sesudahnya.
Di Requests-HTML 0.10.0, session.get() memakai Requests, sedangkan response.html.render() menjalankan Pyppeteer dan biasanya mengarahkan Chromium kembali ke URL halaman. Respons pertama yang berhasil tidak menetapkan rute peramban.
Untuk lingkungan lama yang kompatibel dan sudah ada dengan proxy HTTP tanpa autentikasi:
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()
Pada contoh halaman publik, daftar proxy HTTP menyediakan kandidat untuk proxy_url. browser_args adalah masukan konstruktor publik sesi. Kamus proxies milik Requests tidak mengisi argumen Chromium tersebut.
Penulisan socks5h:// milik Requests juga tidak bisa begitu saja disalin ke Chromium. Chromium menerima socks5://, menyelesaikan nama tujuan SOCKS5 melalui proxy, dan tidak mendukung autentikasi nama pengguna/kata sandi SOCKS5.
render(reload=False) menyerahkan HTML yang sudah ada kepada peramban alih-alih menavigasi ke URL halaman. Skrip dan sub-sumber daya tetap dapat membuat permintaan. Ini berguna ketika respons tersebut sengaja dirender, tetapi tidak mengubah koneksi Requests menjadi transport peramban.