我试图使用以下代码访问此页面上下表的内容:https://cdn.ime.co.ir
根据该守则:
import requests
with requests.Session() as s:
data = {'ContractCode' : 'SAFOR99' }
r = s.post('https://cdn.ime.co.ir/home/load/' , json = data ).json()
print(r)
但我从结果中看到:
JSONDecodeError: Expecting value
请帮助我了解如何阅读此表的内容
数据不在html内容中,但通过API检索,更具体地说,协议是websocket。您可以使用chromedevtools和wss上的过滤器来检查框架,以找到以下url:
wss://cdn.ime.co.ir/realTimeServer/connect
有多个必需的查询参数,包括
connectionToken
,它是通过https://cdn.ime.co.ir/realTimeServer/negotiate
上的RESTAPI获取的打开websocket后,除非使用相同的ConnectionToken值对
https://cdn.ime.co.ir/realTimeServer/start
执行另一个rest请求,否则不会收到太多数据。之后,服务器向您发送JSON数据下面的代码执行上面描述的所有任务,并获得
result
未筛选列表中的数据:然后,您可以使用以下方法获取
SAFOR99
项:相关问题 更多 >
编程相关推荐