在postman中是成功的
url = "https://www.cnnvd.org.cn/web/homePage/cnnvdVulList"
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36'
}
data = '{"keyword":"CVE-1999-0095"}'
res = requests.post(url=url,data= data,headers=headers)
print(res.text)
我查了很多资料,说raw是纯文本格式提交的,我又去看postman中的headers,查看content-Type中指定了格式
修改了爬虫中的headers
url = "https://www.cnnvd.org.cn/web/homePage/cnnvdVulList"
headers = {
'Content-Type': 'application/json;charset=UTF-8',
'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.104 Safari/537.36'
}
data = '{"keyword":"CVE-1999-0095"}'
res = requests.post(url=url,data= data,headers=headers)
print(res.text)
或者把data写出字典格式,再用json.dumps(data)转换一下