【无标题】关于携程旅行手机端网站分析:
关于携程旅行手机端网站分析:第一次写博客。。
作者是一名初阶爬虫人员 遇到过很多大坑,因此发表出来,让小伙伴们避避雷
1.post请求,携带的参数必须是json字符串形式的 上代码
res = requests.post(self.url, headers=self.headers, data=json.dumps(data),proxies=ip) |
必须要将参数转化成json字符串形式发送请求,这是一个大坑
2.以下图片为请求负载,请求负载里的参数都要带上,而且格式也必须严格按照参数的格式
看代码:这是我的参数
data = {'extension': [{'name': "osVersion",'value': "6.0",},{'name': "deviceType",'value': "android",},],'filter': {'filterItems': []},'head': {'auth': "",'cid': "09031137218199825303",'ctok': "",'cver': "1.0",'extension': [],'lang': "01",'sid': "8888",'syscode': "09",'xsid': "",},'count': 20,'crnVersion': "2020-09-01 22:00:45",'districtId': f"{aaaa}", # 城市id变化'index': num,'isInitialState': True,'isShowAggregation': True,'pageId': "214062",'scene': "DISTRICT",'sortType': 1,'token': "JjAmMjAmMCYmNzY4OTYsMTA1NTg5MzUsMjQzMDExNDUsOTA3MDYsMTA3NTgzNTEsNzY4ODQsMTA1NTk3MDYsNTgyNTU0NjEsNzY4ODUsMTA3NTg3MDgsODc4MTksNjE0Mjc1MDYsMTA1MjM0NzIsOTE4NDksMTA1NTg5OTYsODM3NzEsNzY4OTQsMTA2ODkzNDQzLDEwNzU5MDAyLDU3MjM5MjA4LA==",'traceId': "7e92b543-a074-a68b-6ee1-166c3a697061",'_fxpcqlniredt': '09031137218199825303' } 3.headers 请求头里的参数: Host: m.ctrip.com 表示域名 content-type: application/json 表示发送请求的类型,必须是json类型的字符串,而我们所书写的参数是个字典,所以必须要 json.dumps(data) 这样进行转化 其余的参数我还带了有 'origin','referer','referer','accept-language','cookie' 只要发送请求成功返回数据,接下来解析因该是不会有什么大问题的 但万万没想到,我解析的数据代码写的稀烂 看代码 def jieXi(self,data):pls = data['attractionList']for pl in pls: # 地址 景点名 价格 评分 距市中心 详情页链接dizhi = pl['card']['districtName']jingDianMing = pl['card']['poiName']# price = pl['card']['price'] 这个位置定位不对 返回的数据有变化# price = jsonpath.jsonpath(data,'$..price')try:price = jsonpath.jsonpath(data,'$..marketPrice')[0]except:price = jsonpath.jsonpath(data,'$..marketPrice')if price=='false':price = '免费'pingFen = pl['card']['commentScore']juShiZhongXin = pl['card']['distanceStr']xiangQingYeLianJie = pl['card']['detailUrl']print(dizhi,jingDianMing,price,pingFen,juShiZhongXin,'\n',xiangQingYeLianJie)print('===='*30)self.dict_user['地址']=dizhiself.dict_user['景点名']=jingDianMingself.dict_user['价格']=priceself.dict_user['评分']=pingFenself.dict_user['距市中心']=juShiZhongXinself.dict_user['详情页链接']=xiangQingYeLianJieself.save(self.dict_user) 简单来说就是:浏览器抓包得到的与实际responce响应到的不一样 95%相似性 就比如价格这个属性 原来的在字典里一层一层的找已经不适用了 要用jsonpath直接定位到, 这样做的坏处也有,返回的是一个列表 看看我保存的json数据 下面的截图是我保存的json数据 |
返回这样的数据让我很懵,我也不知道数据的真实性,但这就是我代码运行出来的结果
我唯一想到的办法就是异常处理
价格那个列表取索引为0,如果报错就异常处理,打印‘免费’
以上就是我个人遇到的大坑,如果有遇到过且成功决解的同学,我们可以一起交流下,救救我
【无标题】关于携程旅行手机端网站分析:相关推荐
- 携程首页手机端-静态页面
把pin老师旧版的携程页面跟新版的结合一起编写 学到的内容有: normolize初始化样式 flex布局 精灵图二倍图的图形更改 阿里iconfont字体图标的使用 三角的制作 手机端 ...
- 用HTML和CSS做一个携程旅游手机端布局含源码分享
效果如下图所示: 文件夹内容如下: 源码分享:https://pan.baidu.com/s/1Rdt24sPEB9Rp8tnc9Udr3Q 提取码:3eka html: <!DOCTYPE ...
- 携程app 原生 html5,仿携程html5手机端UI(仅有首页的源码未实现业务逻辑)
属性 大小 日期 时间 名称 ----------- --------- ---------- ----- ---- 目录 0 201 ...
- 查询空缺_携程旅行2021校招开启,9大类职位,1000+岗位空缺,本科及以上学历...
携程旅行2021秋季校招正式开启! 携程集团(纳斯达克股票代码:TCOM)是一家领先的在线旅游服务提供商,旗下品牌包括携程.Trip.com.天巡和去哪儿.携程集团能够整合复杂的旅游相关信息并通过其先 ...
- 去哪儿旅行携程旅行淘宝旅行移动端产品分析报告
行业状况 随着中国居民收入的逐步提升和对生活品质要求的提高,人们对出行旅游的需求近些年来快速增长.2014年中国在线旅游市场交易规模已经达到了2798.2亿元,增长率为28.3%. 在2014年 ...
- 携程旅行android pad客户端,携程发布Android Pad版 无线布局初步完成
腾讯科技讯(月古)10月27日消息,近日,携程旅行网正式发布了携程无线Android Pad 1.0版.至此,携程旅行网无线服务的布局已初步完成. 全新的携程无线Android Pad 1.0版,融合 ...
- 旅游网站竞品分析—携程旅行网VS去哪儿网(上)
1.1目前现状 统计显示,2013 年中国旅游市场总交易额约为29475亿元,其中在线旅行市场交易额约为2522亿元. 在线机票业务总交易额约为 1544.6 亿元,在在线旅游市场中占比为61.2%; ...
- 【历史上的今天】5 月 18 日:微软反垄断诉讼;携程旅行网上线;谷歌首次公布 TPU
整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 5 月 18 日,在 1939 年的今天,彼得·格伦伯格(Peter Grunberg)出生.格伦伯 ...
- 移动端--(flex布局携程旅行)
技术:主要采用flex弹性布局 HTML程序 <!DOCTYPE html> <html lang="en"><head><meta ch ...
最新文章
- 敏捷团队迭代交付能力计算模型
- C++ with STL(五)queuestacklist
- 《编程题》组装三角形
- [Leetcode] 第289题 生命游戏
- maven与spring_与Spring和Maven签约首个SOAP服务
- Java JUC工具类--Exchanger
- Spring Security原理分析
- 从Unreal Engine 3到Unreal Engine 4
- 第二次作业+105032014049
- CSDN看不见博主博客的评论_解决办法(亲测有效奥)
- Centos7 tomcat优化
- cap流程图_冲压工艺流程图+PFMEA+CP范例(中英文)
- 一级倒立摆matlab仿真,一级倒立摆的Simulink仿真
- python+django+mysql校园二手书交易系统毕业设计毕设开题报告
- 田野调查手记·浮山篇(三)
- python测验6_Python语言程序设计 - 测验6: 组合数据类型 (第6周)
- 笔记本计算机怎么进入安全模式启动,笔记本电脑如何进入安全模式
- 洛谷-P1883-函数最小值
- class6--tensorflow:滑动平均
- Multi-University Training Contest L - Wavel Sequence