【发布时间】:2019-09-26 08:07:43
【问题描述】:
我们正在使用代理。
我可以使用以下代码打开http://www.google.com 和 www.bing.com。
但是,我在尝试打开其他网站时收到错误“urlopen error [Errno 11001] getaddrinfo failed”, 例如:https://earthquake.usgs.gov/earthquakes/feed/v1.0/summary/2.5_day.geojson、https://www.pythonprogramming.net、 www.aa.com 等
http和https的规则是一样的,即http://MyCompanyProxy:Port/。
如何将 http 和 https 规则都设置为 http://MyCompanyProxy:Port/ ?
谢谢。
import urllib.request
def main():
urlData = "http://google.com/"
***edited****
proxy = urllib.request.ProxyHandler({'http': 'http://MyCompanyProxy:Port/','https': 'http://MyCompanyProxy:Port/'})
****end of edit*******
auth = urllib.request.HTTPBasicAuthHandler()
opener = urllib.request.build_opener(proxy, auth, urllib.request.HTTPHandler)
urllib.request.install_opener(opener)
webUrl = urllib.request.urlopen(urlData) #--->> error here
print ("result code: " + str(webUrl.getcode()))
if __name__ == "__main__":
main()
【问题讨论】:
标签: python python-3.x web-scraping urllib