【发布时间】:2018-07-17 20:43:42
【问题描述】:
所以,我几天前了解了 Web Scraping 的工作原理,而我今天却在胡闹。我想知道如何测试页面是否存在/不存在。所以,我查了一下,发现Python check if website exists。我正在使用requestsmodule,我从答案中得到了这个代码:
import requests
request = requests.get('http://www.example.com')
if request.status_code == 200:
print('Web site exists')
else:
print('Web site does not exist')
我试了一下,既然 example.com 存在,它就会打印“Web site exists”。但是,我尝试了一些我确定不存在的东西,比如 examplewwwwwww.com,它给了我this error。为什么要这样做,我怎样才能防止它打印出错误(而是说该网站不存在)?
【问题讨论】:
-
正如该页面所示,它会抛出 ConnectionError stackoverflow.com/questions/16778435/…
-
那里没有服务器可以为您提供状态。阅读您发布的链接的 cmets,而不是使用
try... except ConnectionError之类的内容。 -
一些网站阻止您认为这是一次抓取尝试,因为您的用户代理和其他功能知道您不是真正的浏览器。这解释了为什么某些被 404 拒绝的 url 实际上确实可以在浏览器中工作
标签: python web-scraping