import mechanicalsoup
import requests

session = requests.Session()
session.trust_env = False
session.proxies.update({
    "http": "http://proxy.example.net:8080",
    "https": "http://proxy.example.net:8080",
})

browser = mechanicalsoup.StatefulBrowser(session=session)

Виберіть точку виходу перед відкриттям сторінки форми. Для публічної форми, де дозволені публічні проксі, можна взяти кандидата зі списку HTTP-проксі. Створіть сеанс і передайте його в StatefulBrowser, як показано. Використовуйте цей самий браузер для open, вибору форми та submit_selected; закрийте його через browser.close(), коли робота завершиться.

Так політика проксі та стан cookie залишаються в сеансі, який використовується для всього обміну. Аргумент proxies, переданий під час першого завантаження, не налаштовує автоматично наступне надсилання.

trust_env = False робить маршрут цього прикладу незалежним від налаштувань проксі з оточення Requests. Він також вимикає вибір пакета CA з оточення та автентифікацію через .netrc. Укажіть їх явно, якщо вони потрібні, або враховуйте оточення, вибираючи іншу політику.

Схожі статті