我能够通过浏览器打开这个url,并看到json格式的响应。但是,当我使用requests模块时,该方法没有响应。
import requests
response = requests.get('https://api.nasdaq.com/api/calendar/earnings?date=2021-02-23')这里怎么了?
发布于 2021-02-20 09:24:15
这对我起了作用:
url = 'https://api.nasdaq.com/api/calendar/earnings?date=2021-02-23'
headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.142 Safari/537.36'}
response = requests.get(url, headers=headers)解释
该站点正在阻止python的请求。请参阅解释这里
发布于 2021-02-20 09:25:54
当添加在chrome中检查元素时出现的查询标题时,请求在python中运行良好:
import requests
response = requests.get('https://api.nasdaq.com/api/calendar/earnings?date=2021-02-23',headers={"authority":"api.nasdaq.com","scheme":"https","path":"/api/calendar/earnings?date=2021-02-23","pragma":"no-cache","cache-control":"no-cache","accept":"application/json, text/plain, */*","user-agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.182 Safari/537.36","origin":"https://www.nasdaq.com","sec-fetch-site":"same-site","sec-fetch-mode":"cors","sec-fetch-dest":"empty","referer":"https://www.nasdaq.com/","accept-encoding":"gzip, deflate, br","accept-language":"en-US,en;q=0.9,es;q=0.8,nl;q=0.7"})https://stackoverflow.com/questions/66289443
复制相似问题