我正在尝试open
使用Urllib2
中的此格式的网址列表:
google.com
facebook.com
youtube.com
yahoo.com
baidu.com
使用此方法:
urllib2.urlopen(url)
:
收到此错误:
File "fetcher.py", line 98, in fetch_urls_and_save
response = urllib2.urlopen(url)
File "urllib2.py", line 154, in urlopen
return opener.open(url, data, timeout)
File "urllib2.py", line 423, in open
protocol = req.get_type()
File "urllib2.py", line 285, in get_type
raise ValueError, "unknown url type: %s" % self.__original
所以,我的问题是:
是否有正确的方法来“修复”这些网址,或者我应该只在每个字符串前面附加http://
?我认为这不是最佳解决方案,因为以https://
开头的网址呢?
答案 0 :(得分:4)
我建议只是将http://
附加到字符串,因为许多使用https://
方案的网站会通过重定向请求自动切换到该字符串。
您可以使用urlopen
功能检查getcode()
返回的状态。
a=urllib2.urlopen("http://google.com")
print a.getcode() # prints 200