我正在全天候抓取网站并使用
下载网页urllib.request.urlopen(url)
但是,有时(没有明显原因)结果是空字符串。它发生在不同的页面,不同的时间。没有特殊模式 - 有时只返回一个空字符串。
为什么会发生这种情况的任何想法?
答案 0 :(得分:2)
这是一种可以帮助你的方法。
import requests
urls = ['http://www.news.com',
'http://www.cnn.com',
]
failed_urls = []
for url in urls:
r = requests.get(url)
# Some of the things you can check
print(url)
print(r.history)
print(r.status_code)
print(r.content)
# One method you could use to keep track of URls that fail
if r.status_code != 200 or not r.content:
failed_urls.append([url, r.status_code, r.content])