2010-01-04 3 views
9

У меня вопрос о поддержке прокси-сервера python mechanize. Я создаю скрипт веб-клиента, и я хотел бы добавить функцию поддержки прокси в свой скрипт.Поддержка прокси-сервера механизации Python

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

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

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

ответ

9

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

предполагая HTTP прокси-сервер работает на локальном хосте: 8888

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

Должно работать ,

29

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

br = Browser() 
# Explicitly configure proxies (Browser will attempt to set good defaults). 
# Note the userinfo ("joe:[email protected]") and port number (":3128") are optional. 
br.set_proxies({"http": "joe:[email protected]:3128", 
       "ftp": "proxy.example.com", 
       }) 
# Add HTTP Basic/Digest auth username and password for HTTP proxy access. 
# (equivalent to using "joe:[email protected]" form above) 
br.add_proxy_password("joe", "password") 
+0

Привет, спасибо за ваш ответ, но это модуль mechanize.browser, то есть какой-то другой, что я ищу для метода, им нужен механизатор. Метод curlopen thanks – paul

+0

br.add_proxy_password() больше не работает. –

Смежные вопросы