通过代理进行编程Web浏览

时间:2013-09-29 21:24:48

标签: python proxy

我目前正在编写一个Python脚本,它基本上访问不同的网站并从这些网站读取一些数据。但是,它有一个复杂性。我位于国家A,但该网站上的数据仅在国家B中可用。这意味着我需要一个连接到国家B中的代理服务器的脚本,然后才开始以编程方式进行浏览。

到目前为止,我已经编写了使用mechanize模块进行浏览的脚本。但是,我完全不确定如何通过代理运行它。

编辑:与代理的连接有一个用户名和密码。

有没有人知道如何做到这一点?

1 个答案:

答案 0 :(得分:1)

在机械化中做这样的事情:

browser = mechanize.Browser()
browser.set_proxies({"http": "111.11.11.11"})
response = browser.open("http://google.com")

然后将其设置为您希望浏览器连接的代理

或者您可以更改特定请求的代理:

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

使用带密码的代理:

# Proxy and user/password
br.set_proxies({"http": "joe:password@myproxy.example.com:3128"})

# Proxy
br.set_proxies({"http": "myproxy.example.com:3128"})
# Proxy password
br.add_proxy_password("joe", "password")