关于携程旅行手机端网站分析:第一次写博客。。

作者是一名初阶爬虫人员 遇到过很多大坑,因此发表出来,让小伙伴们避避雷

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,如果报错就异常处理,打印‘免费’

以上就是我个人遇到的大坑,如果有遇到过且成功决解的同学,我们可以一起交流下,救救我

【无标题】关于携程旅行手机端网站分析:相关推荐

  1. 携程首页手机端-静态页面

    ​​​​​​​把pin老师旧版的携程页面跟新版的结合一起编写 学到的内容有: normolize初始化样式 flex布局 精灵图二倍图的图形更改 阿里iconfont字体图标的使用 三角的制作 手机端 ...

  2. 用HTML和CSS做一个携程旅游手机端布局含源码分享

    效果如下图所示: 文件夹内容如下: 源码分享:https://pan.baidu.com/s/1Rdt24sPEB9Rp8tnc9Udr3Q   提取码:3eka html: <!DOCTYPE ...

  3. 携程app 原生 html5,仿携程html5手机端UI(仅有首页的源码未实现业务逻辑)

    属性            大小     日期    时间   名称 ----------- ---------  ---------- -----  ---- 目录           0  201 ...

  4. 查询空缺_携程旅行2021校招开启,9大类职位,1000+岗位空缺,本科及以上学历...

    携程旅行2021秋季校招正式开启! 携程集团(纳斯达克股票代码:TCOM)是一家领先的在线旅游服务提供商,旗下品牌包括携程.Trip.com.天巡和去哪儿.携程集团能够整合复杂的旅游相关信息并通过其先 ...

  5. 去哪儿旅行携程旅行淘宝旅行移动端产品分析报告

     行业状况 随着中国居民收入的逐步提升和对生活品质要求的提高,人们对出行旅游的需求近些年来快速增长.2014年中国在线旅游市场交易规模已经达到了2798.2亿元,增长率为28.3%. 在2014年 ...

  6. 携程旅行android pad客户端,携程发布Android Pad版 无线布局初步完成

    腾讯科技讯(月古)10月27日消息,近日,携程旅行网正式发布了携程无线Android Pad 1.0版.至此,携程旅行网无线服务的布局已初步完成. 全新的携程无线Android Pad 1.0版,融合 ...

  7. 旅游网站竞品分析—携程旅行网VS去哪儿网(上)

    1.1目前现状 统计显示,2013 年中国旅游市场总交易额约为29475亿元,其中在线旅行市场交易额约为2522亿元. 在线机票业务总交易额约为 1544.6 亿元,在在线旅游市场中占比为61.2%; ...

  8. 【历史上的今天】5 月 18 日:微软反垄断诉讼;携程旅行网上线;谷歌首次公布 TPU

    整理 | 王启隆 透过「历史上的今天」,从过去看未来,从现在亦可以改变未来. 今天是 2022 年 5 月 18 日,在 1939 年的今天,彼得·格伦伯格(Peter Grunberg)出生.格伦伯 ...

  9. 移动端--(flex布局携程旅行)

    技术:主要采用flex弹性布局 HTML程序 <!DOCTYPE html> <html lang="en"><head><meta ch ...

最新文章

  1. 敏捷团队迭代交付能力计算模型
  2. C++ with STL(五)queuestacklist
  3. 《编程题》组装三角形
  4. [Leetcode] 第289题 生命游戏
  5. maven与spring_与Spring和Maven签约首个SOAP服务
  6. Java JUC工具类--Exchanger
  7. Spring Security原理分析
  8. 从Unreal Engine 3到Unreal Engine 4
  9. 第二次作业+105032014049
  10. CSDN看不见博主博客的评论_解决办法(亲测有效奥)
  11. Centos7 tomcat优化
  12. cap流程图_冲压工艺流程图+PFMEA+CP范例(中英文)
  13. 一级倒立摆matlab仿真,一级倒立摆的Simulink仿真
  14. python+django+mysql校园二手书交易系统毕业设计毕设开题报告
  15. 田野调查手记·浮山篇(三)
  16. python测验6_Python语言程序设计 - 测验6: 组合数据类型 (第6周)
  17. 笔记本计算机怎么进入安全模式启动,笔记本电脑如何进入安全模式
  18. 洛谷-P1883-函数最小值
  19. class6--tensorflow:滑动平均
  20. Multi-University Training Contest L - Wavel Sequence

热门文章

  1. HART MODEM hart转usb调制解调器带wifi hart猫
  2. js实现简单的页面渲染
  3. 收到浦发银行总行的体检通知
  4. 我被39岁阿姨包全天讲代码
  5. Mac Pro m1打出反引号
  6. C语言的图形界面?——简单外挂程序
  7. 火车头采集器php,php插件
  8. Python入门 —— 从零基础到调包侠
  9. 【ECharts】图例 legend
  10. 完全解析高通sensor新架构SEE