无法发布到代理表格

时间:2013-07-04 13:40:14

标签: python post urllib2

我想通过代理http站点使用urllib2,发布到名称=“what”的表单组件,单击“提交”,然后将生成的网页作为字符串返回。我知道很多人之前已经问过这个问题,请参阅here for example。但是,我无法让他们的解决方案适用于我的示例代码:

url = "http://anonymouse.org/anonwww.html"
posturl = "www.google.ca"
values = {'what':posturl}

data = urllib.urlencode(values)
req = urllib2.Request(url, data)
response = urllib2.urlopen(req)
html = response.read()

print html

2 个答案:

答案 0 :(得分:1)

捎带克里斯蒂安的回答:

requests对于这些内容来说是一个非常好的库...但是,urllib2也足够了:

import urllib2


def get_anon_content(url):
    anon_url = 'http://anonymouse.org/cgi-bin/anon-www.cgi/%s' % url
    req = urllib2.Request(anon_url)
    response = urllib2.urlopen(req)
    content = response.read()
    return content


url = 'http://www.google.ca'
print get_anon_content(url)

答案 1 :(得分:0)

在你的情况下你可以使用这个网址:

http://anonymouse.org/cgi-bin/anon-www.cgi/http://www.google.ca

与使用anonymouse相同,除了你不必去网站你只是使用网址

下次让你自己更轻松并使用requests你可以获得与urllib相同的效果,但是有4行,所以检查出来

祝你好运:)