Механизированная поддержка прокси Python

У меня есть вопрос о поддержке прокси Python Mechanize. Я делаю сценарий для веб-клиента и хочу добавить функцию поддержки прокси в мой скрипт.

Например, если у меня есть:

params = urllib.urlencode({'id':id, 'passwd':pw})
rq = mechanize.Request('http://www.example.com', params) 
rs = mechanize.urlopen(rq)

Как я могу добавить поддержку прокси в мой скрипт механизации? Всякий раз, когда я открываю это www.example.com веб-сайт, я хотел бы пройти через прокси.

2 ответа

Решение

Вы используете mechanize.Request.set_proxy(хост, тип) (по крайней мере, начиная с 0.1.11)

предполагая, что http-прокси работает на localhost:8888

req = mechanize.Request("http://www.google.com")
req.set_proxy("localhost:8888","http")
mechanize.urlopen(req)

Должно сработать.

Я не уверен, поможет ли это или нет, но вы можете установить настройки прокси в механизированном браузере прокси.

br = Browser()
# Explicitly configure proxies (Browser will attempt to set good defaults).
# Note the userinfo ("joe:password@") and port number (":3128") are optional.
br.set_proxies({"http": "joe:password@myproxy.example.com:3128",
                "ftp": "proxy.example.com",
                })
# Add HTTP Basic/Digest auth username and password for HTTP proxy access.
# (equivalent to using "joe:password@..." form above)
br.add_proxy_password("joe", "password")
Другие вопросы по тегам