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)

Hãy chọn điểm cuối trước khi mở trang biểu mẫu. Với một biểu mẫu công khai được phép dùng proxy công cộng, có thể chọn một ứng viên từ danh sách proxy HTTP. Tạo phiên và truyền nó cho StatefulBrowser như trong ví dụ. Dùng chính trình duyệt đó cho open, chọn biểu mẫu và submit_selected; đóng nó bằng browser.close() khi quy trình kết thúc.

Cách này giữ chính sách proxy và trạng thái cookie trên phiên được dùng cho toàn bộ quá trình trao đổi. Một đối số proxies truyền cho lần tải đầu tiên không tự động cấu hình cho lần gửi sau.

trust_env = False khiến tuyến của ví dụ này độc lập với cấu hình proxy từ môi trường của Requests. Nó cũng tắt việc chọn gói CA dựa trên môi trường và xác thực .netrc. Hãy cung cấp những thứ đó một cách tường minh nếu quy trình cần, hoặc tính đến môi trường khi chọn chính sách khác.

Bài viết liên quan