1.前言
个人是神州租车的老用户,也在几次自驾游中体验过神州的顺风车业务,如果有可以顺路的顺风车的话不要太方便,但是目前来说,神州租车的页面并不是很友好,不是很能直观的展示出我的目的地以及所需要的时间,如果能结合一下地图可视化,以及直观的展示可能需要的油耗,对我的全程的花费就会有直观的数据,可以更好的辅助我在选择顺风车的时候做出决策。
由于本人没有开发经验,里面用到的代码拟采用大模型生成。
2. 准备工作
首先第一步,我先上神州的官网看看,好家伙,只有手机端才可以看到顺风车的信息,怎么办,我第一步先把浏览器伪装成移动端。这样就可以正常的显示了。那么这些信息在哪呢,目前我也不太清楚。看一下源代码把,点击网络,点击response,找到这个页面,眼瞅着里面内容越来越熟悉啊。

可以看到返回了好几个字段,不管了,丢给大模型帮我看看。
gpt:
-
"busiCode": "BASE000"
: 这是业务代码,可能用于标识响应的类型或用途。 -
"code": 1
: 这是响应的状态码,通常用来表示请求的处理状态,1 通常表示成功。 -
"content"
: 这是响应的主要内容,包含了顺风车的信息。 -
"picUrl": "https:\/\/fimg.zuchecdn.com\/upload\/app\/other\/free_ride@2x.png"
: 这是一个图片的URL,可能是顺风车相关的图片。 -
"count": 7
: 这是顺风车列表的数量,表示有7个顺风车信息。 -
"hitchList"
: 这是一个顺风车列表,包含了多个顺风车的信息。
可以比我读起来快多了,好的,那大概这就是有用的信息了,到时候就把这些内容拔下来,那怎么实现呢,我可一点都不会代码啊。
继续大模型,
import requests
def main():
url = "https://m.zuche.com/api/gw.do?uri=/action/carrctapi/order/hitchList/v1"
headers = {
"User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Mobile Safari/537.36",
"Host": "m.zuche.com",
"Origin": "https://m.zuche.com",
"Referer": "https://m.zuche.com/"
# 可以根据需要添加其他请求头信息
}
cookies = {
"lctuid": "b3e2ee00f94d6a461f502e049ebeb33a",
"CAR_UID": "2f2ee959-3f5d-4ee9-8aa1-563fbcbbae691711693335334",
"intranet-sessionid": "dd1d54c1-0fb7-4d6a-887d-940997e213ab"
# 可以根据需要添加其他 cookie 信息
}
response = requests.post(url, headers=headers, cookies=cookies)
if response.status_code == 200:
data = response.json()
print("JSON 数据:", data)
else:
print("请求失败,状态码:", response.status_code)
if __name__ == "__main__":
main()
可以呀像模像样的,我运行试试把,喔嚯,返回失败了
JSON 数据: {'busiCode': 'BASE001', 'code': 6, 'msg': '服务器内部错误', 'status': 'BASE_ERROR', 'uid': '4d2824b0-1d7e-4b3d-85fd-c42a30066bfb1711700972718'}
q@leoMacBook-Air Desktop %
遇到阻碍了,下次再更吧。