可以使用Python请求库阅读Wikipedia吗?
要从给定URL读取内容,我执行以下操作:可以使用Python请求库阅读Wikipedia吗?,python,web-scraping,python-requests,wikipedia,Python,Web Scraping,Python Requests,Wikipedia,要从给定URL读取内容,我执行以下操作: import requests proxies = {'http':'http://user:pswd@foo-webproxy.foo.com:7777'} url = 'http://example.com/foo/bar' r = requests.get(url, proxies = proxies) print r.text.encode('utf-8') 而且效果很好!我得到了内容 但是,如果我使用其他URL: url = 'https:/
import requests
proxies = {'http':'http://user:pswd@foo-webproxy.foo.com:7777'}
url = 'http://example.com/foo/bar'
r = requests.get(url, proxies = proxies)
print r.text.encode('utf-8')
而且效果很好!我得到了内容
但是,如果我使用其他URL:
url = 'https://en.wikipedia.org/wiki/Mestisko'
它不起作用。我收到一条以以下内容开头的错误消息:
requests.exceptions.ConnectionError: ('Connection aborted.', error(10060
维基百科是否阻止自动请求
已添加
我尝试按以下方式设置用户代理:
headers = {'User-Agent':'Mozilla/5.0'}
r = requests.get(url, proxies = proxies, headers = headers)
不幸的是,这没有帮助。我仍然会犯同样的错误
增加了2个
现在我很困惑。如果我试图从
http://example.com/foo/bar
通过设置代理,我得到了它。若我并没有设置代理,那个么我将获得由代理生成的内容。这种行为我能理解。现在,如果我试图从Wikipedia获取内容,我会收到相同的错误消息,不管我是否设置了代理。因此,我不明白此错误消息来自Wikipedia或proxy(这两个选项不可能都是真的)。通过替换以下内容解决了问题:
proxies = {'http':'http://user:pswd@foo-webproxy.foo.com:7777'}
使用以下行:
proxies = {'http':'http://user:pswd@foo-webproxy.foo.com:7777', 'https':'http://user:pswd@foo-webproxy.foo.com:7777'}
通过更换以下部件解决了此问题:
proxies = {'http':'http://user:pswd@foo-webproxy.foo.com:7777'}
使用以下行:
proxies = {'http':'http://user:pswd@foo-webproxy.foo.com:7777', 'https':'http://user:pswd@foo-webproxy.foo.com:7777'}
@CharlesP,我还需要通过什么?使用urllib2Roman对我很有用--让我在会议结束后在ipython玩一玩。我记不清了。我每天都在维基百科上使用
请求。在没有代理的情况下尝试一下,看看它是否有效。实际上,它似乎工作得很好。Nevermind@CharlesP,我还需要通过什么?使用urllib2Roman对我很有用--让我在会议结束后在ipython中玩一玩。我记不清了。我每天都在维基百科上使用请求。在没有代理的情况下尝试一下,看看它是否有效。实际上,它似乎工作得很好。没有关系