Python抓取响应数据

2024-06-25 06:03:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我想拿一个特定网站的回复数据。 我有这个网站: https://enjoy.eni.com/it/milano/map/ 如果我打开browser Debugger控制台,我会看到一个posr请求,它会给出json响应:

response image

在python中,我如何通过抓取网站来接受这种响应? 谢谢


Tags: 数据httpsbrowsercomjsonmap网站it
1条回答
网友
1楼 · 发布于 2024-06-25 06:03:23

显然,Web服务具有PHPSESSID验证,因此我们需要首先使用适当的用户代理获取它:

import requests
import json

headers = {
    'User-Agent': 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.76 Safari/537.36'
}
r = requests.get('https://enjoy.eni.com/it/milano/map/', headers=headers)
session_id = r.cookies['PHPSESSID']
headers['Cookie'] = 'PHPSESSID={};'.format(session_id)
res = requests.post('https://enjoy.eni.com/ajax/retrieve_vehicles', headers=headers, allow_redirects=False)
json_obj = json.loads(res.content)

相关问题 更多 >