Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 尝试web刮取API时的响应代码418_Python 3.x_Api_Web Scraping - Fatal编程技术网

Python 3.x 尝试web刮取API时的响应代码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]>

我正在尝试从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='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]>