为什么我无法阅读 python 中的 url?
Why can't I read a url in python?
我想阅读 python 中的 url,但我用不同的方式遇到错误:
import urllib
link = "http://data.europa.eu/esco/isco/C0110"
f = urllib.urlopen(link)
myfile = f.read()
print(myfile)
HTTPError: HTTP Error 406: Not Acceptable
link = "http://data.europa.eu/esco/isco/C0110"
f = requests.get(link)
print(f)
<Response [406]>
有什么想法吗?
在这种特殊情况下,您可以通过提供适当的 headers 来克服 HTTP 406,如下所示:-
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36',
'Accept-Encoding': '*',
'Accept': 'text/html',
'Accept-Language': '*'}
link 是 broken/invalid。根据网站,以下 link http://data.europa.eu/esco/isco/C0110
不是 URL 而是 URI。
他们似乎对数据进行了 API 设置。
你可以;
- 检查 API 并配置它
https://ec.europa.eu/esco/portal/api
或
- 使用类似 BeautifulSoup4 的网络模块 抓取 您想要内容的页面。
我想阅读 python 中的 url,但我用不同的方式遇到错误:
import urllib
link = "http://data.europa.eu/esco/isco/C0110"
f = urllib.urlopen(link)
myfile = f.read()
print(myfile)
HTTPError: HTTP Error 406: Not Acceptable
link = "http://data.europa.eu/esco/isco/C0110"
f = requests.get(link)
print(f)
<Response [406]>
有什么想法吗?
在这种特殊情况下,您可以通过提供适当的 headers 来克服 HTTP 406,如下所示:-
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36',
'Accept-Encoding': '*',
'Accept': 'text/html',
'Accept-Language': '*'}
link 是 broken/invalid。根据网站,以下 link http://data.europa.eu/esco/isco/C0110
不是 URL 而是 URI。
他们似乎对数据进行了 API 设置。
你可以;
- 检查 API 并配置它
https://ec.europa.eu/esco/portal/api
或
- 使用类似 BeautifulSoup4 的网络模块 抓取 您想要内容的页面。