Python 3.x 尝试web刮取API时的响应代码418
我正在尝试从API获取数据:。 但是我得到的HTTP响应是418。 解决这个问题的可能方法是什么Python 3.x 尝试web刮取API时的响应代码418,python-3.x,api,web-scraping,Python 3.x,Api,Web Scraping,我正在尝试从API获取数据:。 但是我得到的HTTP响应是418。 解决这个问题的可能方法是什么 url ='https://www.techinasia.com/wp-json/techinasia/2.0/posts' response = requests.get(url) print(type(response),response)``` Output: <class 'requests.models.Response'> <Response [418]>
url ='https://www.techinasia.com/wp-json/techinasia/2.0/posts'
response = requests.get(url)
print(type(response),response)```
Output:
<class 'requests.models.Response'> <Response [418]>
url='1〕https://www.techinasia.com/wp-json/techinasia/2.0/posts'
response=requests.get(url)
打印(类型(响应)、响应)```
输出:
传递您选择的用户代理就足以获得响应。请求调用HTTP get请求,但有时服务器需要用户代理、部分/完整头、参数或cookie来验证请求
在这种情况下,您只需要一个用户代理,实际上您甚至不需要传递有效的用户代理
代码示例
输出
您必须在HTTP请求中指定头,请求的get方法,为您提供一个参数来完成此操作,
headers
。headers参数应该包含一个python字典。使用headers应该可以解决您遇到的问题。我尝试通过传递用户代理来执行,但仍然收到响应代码[418]。我用的是水蟒Jupyter笔记本。啊!抱歉,我忘记添加请求。获取(url,headers=headers),检查更新的代码。
import requests
headers = {
'User-Agent': 'M',
}
requests.get('https://www.techinasia.com/wp-json/techinasia/2.0/posts',headers=headers)
<Response [200]>