在kaggle kernels
处理提取网址列表的最佳方法是什么?
我首先尝试使用google.com
进行测试。
First Method
:使用urllib.request
import urllib.request resp = urllib.request.urlopen('http://www.google.com')
这导致gai错误和urlopen错误[Errno -2]名称或服务未知
Second Method
:使用请求
import requests resp = requests.get('http://www.google.com')
这导致错误gaierror:[Errno -3]名称解析暂时失败并且无法建立新连接:[Errno -3]名称解析暂时失败。
import urllib.request
req = urllib.request.Request('http://www.google.com')
print (req)
try:
response = urllib.request.urlopen(req)
print (response)
except urllib.error.URLError as e:
print (e.reason)
print("something wrong")
输出:
<urllib.request.Request object at 0x7fed1d00c518>
[Errno -2] Name or service not known
something wrong
我尝试按stackoverflow answer的建议解析DNS解析。
修复此错误的方法是什么?为什么urlopen或请求不在kaggle内核中工作?
我看到许多内核具有相同的错误kernel 1 kernel 2 kernel 3。