• 0
  • 0
分享
  • 用Python抓包工具查看周边拼车情况——软件测试圈
  • 落叶凌飒 2024-09-14 15:40:23 字数 1263 阅读 173 收藏 0

  说起Python爬虫,很多人第一个反应可能会是Scrapy或者Pyspider,但是今天文章里用到是Python下一个叫Mitmproxy的抓包工具,对付一些非常规的数据获取还是很有效的。

  不过凡事都是有利有弊,一来麻烦,二来呢不会自己动,还得手动(或者按键精灵也可以啊)。

  自从滴滴的拼车业务全国下线之后,一直专注拼车的某拼车APP在背后默默替老大哥照顾着那些可怜的乘客。上周五下班的时候,本来想用某拼车APP搭个顺风车回家,没想到下班高峰期的时候,某拼车APP居然挂了,过了十几分钟才缓过来,心里好奇,就想爬一下某拼车APP的数据,看看周边上下班拼车的情况。

  知己知彼,百战不殆

  对于APP类的爬虫,首先想到的就是抓包,macOS下常用的就是Charles和mitmproxy这两款工具了,而mitmproxy由于支持拦截和脚本又深得我爱,用法的话这里就不具体展开介绍了。

  启动mitmweb(mitmproxy家那个有页面的兄弟)抓包工具,手机上打开某拼车APP客户端,查看附近订单(已提前认证车主,并切换到车主身份)。

1-1.jpg

  对应一下就可以发现,查询附近订单的接口URL就是这个getNearbyBookingRideList,于是我很天真地就拿着这个接口,和抓包数据,就去请求了。

1-2.jpg

  结果人家告诉我:

  {“code”:205,”message”:”签名错误!”}

  因为客户端APP有个签名算法,根据POST给服务器的参数计算的,除非我破了人家APP,然后把算法给找出来,想想还是算了,费神费力(主要是我压根不会)!

  这个法子行不通,只能换个法子了。

  神器在手,天下我有。

  前面提到mitmproxy有个带web界面的兄弟叫mitmweb,其实还有一个支持脚本的兄弟叫mitmdump,写好脚本。

1-3.jpeg

  把脚本存为 111.py,然后终端执行命令:

  mitmdump -s 111.py -p 8080

  剩下要做的就是不断去某拼车APP上划几下,至于数据那块,就交给Dump兄弟就好了

  嗯,看到了嘛~想看哪,手指就滑哪,越滑越有!

1-4.jpg

  再接下来就是需要把我们抓到的数据存起来,以备后期使用,这里我用的是Mongodb,虽然也是第一次用,为了方便点,另外写了个插入数据的方法,再在爬虫文件里面调用。

1-5.jpeg

  再到我们数据库看看,已经硕果累累了,不够的话就再多滑几下。

1-6.jpeg

  数据抓取的思路大概就是这样,因为没时间捣鼓所以就没上APP自动化,其实可以搞个 模拟器+按键精灵,或者appium,就是太懒了怕麻烦,上班的时候划一划就当运动了。

  数据展示

  时间问题,暂时没做数据分析,不过数据挺干净的,也不需要处理啥

  关键字Mongodb、Pandas、Pyecharts

  拿了周六杭州跨城顺风车数据结合阿里云的DataV做了个简单的飞线图,会动的那种,点击阅读原文可以查看动图。

1-7.jpeg


作者:I'm_江河湖海    

来源:http://www.51testing.com/html/90/n-7796390.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 读者提问:免费好用的在线 PDF 转换工具有推荐的吗 ?阿常回答:有,这 6 款在线 PDF 转换工具,免费实用,快来试试吧!1、pdftoword(支持 PDF 与 Word、TXT、图片、HTML等文件之间相互转化)官网地址:https://pdftoword.55.la2、迅捷PDF(支持文档转换、文档处理、文档翻译、图片文字识别等超多强大功能)官网地址:https://www.xunjiepdf.com3、SmallPDF(支持 PDF 转换、PDF 编辑、 PDF 处理等 PDF 管理功能)官网地址:https://smallpdf.com4、hiPDF(一站式 ...
            0 0 1551
            分享
          • 随着互联网技术的日益发展,测试开发工程师要达到“保障质量、提升效率”目标,提升效率更体现在方方面面。作为测试开发工程师,需要掌握基本开发技能,对代码能力也有一定的要求,这也是对项目多一道强有力的保障。在功能测试遇到BUG时,测试开发工程师需在编译器中调试代码,一边追根溯源,一边监测代码质量。而“追根溯源”这一步最重要的依据就是系统输出日志,日志也是开发人员定位问题的第一检查场所。因此,为提升这部分工作效率,小编想通过ELK搭建一套日志收集、存储、展示的工具,来解决目前存在的日志查看效率低下、缺少可视化界面等问题。1.什么是ELKELK由Elasticsearch、Logstash和Kibana...
            2 2 1370
            分享
          •   前言  我们执行UI自动化操作时,大多数时间都是不在现场的,出现错误时,没有办法第一时间查看到,这时我们可以通过截图当时出错的场景保存下来,后面进行查看报错的原因,Selenium中提供了几种截图的方法,小编今天给大家介绍下。  方法一  get_screenshot_as_base64()整个函数,获取当前屏幕页面截图。  我们通过代码编写打开百度页面,然后进行进行通过base64进行截图,截图后再次进行转换成保存下来。# coding:utf-8 from selenium import webdriver import base64 ...
            0 0 1286
            分享
          • 看到这个标题,是不是感觉有点牵强,「增长黑客」和「软件测试」怎么能扯上关系?嗯嗯,那我姑且算是蹭一波「增长黑客」的流量吧,但是等文章看完,希望能改变你的看法。最近正在看范冰大神的《增长黑客》,真是感触颇多,但是严格来说,这本书主要写给产品、运营、增长官以及对增长感兴趣的人,我属于最后一类对增长感兴趣的人,但我的主业仍然是做测试。 于是我结合目前项目的测试情况和书中的关键点做了下关联,想到了如下两个可以借鉴的地方,各位看看是否真的牵强吧。 第一点,需求合理性测试。 《增长黑客》这本书第二章的标题是「创造正确的产品」,在增长黑客最主要的 AARRR 模型中,并没有这个步骤的,但是范冰大神把它...
            1 3 1277
            分享
          • 读者提问:超好用的PC端录屏软件有推荐的吗 ?阿常回答:1、EV 录屏官网地址:https://www.ieway.cn2、傲软录屏官网地址:https://www.apowersoft.cn 3、芦笋官网地址:https://lusun.com4、迅捷录屏官网地址:https://xunjieshipin.com5、OBS官网地址:obsproject.com6、Windows 自带的录屏工具,Xbox7、Mac 自带的录屏工具,QuickTime Player阿常碎碎念:阿常平时喜欢用系统自带的录屏功能,大家可以根据个人偏好来选取合适的录屏软件。看完今天的分享对你是不是...
            0 0 1069
            分享
      • 51testing软件测试圈微信