处理Cookies与POST/GET请求时无法获取正确页面内容问题
我尝试爬取网站https://rentcar.gr/en/booking/cars,通过开发者工具分析出需要先发送POST请求,再发送GET请求才能获取目标页面,但目前遇到了Cookies相关的问题。
以下是开发者工具中POST→GET的请求流程截图:


我的代码逻辑:先GET页面获取token和Cookies,再使用这些数据发送POST请求并保存Cookies,最后用该Cookies发送GET请求,但返回的是网站主页内容而非目标页面。代码如下:
from requests import Session from bs4 import BeautifulSoup api_url = "https://rentcar.gr/en/booking/cars" work = Session() req = work.get(api_url) soup = BeautifulSoup(req.content, "html.parser") token = soup.find('form').find('input').get('value') data = { '_token': token, 'pickUpLocation': '8', 'pickUpDate': '22-02-2024', 'pickUpTime': '10:00', 'dropOffLocation': '6', 'dropOffDate': '29-02-2024', 'dropOffTime': '10:00', 'driverAge': '25', 'carID': '0', 'minPickUpDate': '22-02-2024', 'minDropOffDate': '22-02-2024', } req = work.post(api_url, cookies=req.cookies, data=data) soup = BeautifulSoup( work.get(api_url, cookies=req.cookies).content, "html.parser" ) for h3 in soup.select("h3.carname"): print(f'{h3.text:<60}')
内容的提问来源于stack exchange,提问作者виталик панасюк
相关产品推荐
相关产品推荐

