python urllib2.openurl在特定URL(重定向)下无法工作?
我需要下载一个CSV文件,在浏览器中使用以下链接可以正常工作:
下面的代码可以用来处理其他任何文件(网址),只要是完整的路径就行,但用上面的链接下载时却只得到800字节的乱码。
def getFile(self,URL):
proxy_support = urllib2.ProxyHandler({'http': 'http://proxy.REMOVED.com:8080/'})
opener = urllib2.build_opener(proxy_support)
urllib2.install_opener(opener)
response = urllib2.urlopen(URL)
print response.geturl()
newfile = response.read()
output = open("testFile.csv",'wb')
output.write(newfile)
output.close()
1 个回答
1
urllib2在背后使用了httplib,所以要找出问题的最好办法就是开启http连接的调试功能。在你访问网址之前,添加这段代码,你就能看到一个很清晰的总结,告诉你到底生成了什么样的http流量:
import httplib
httplib.HTTPConnection.debuglevel = 1