22.网络爬虫—APP数据抓取详讲

网络爬虫—APP数据抓取详讲

  • Fiddler
        • 工作原理
        • 安装完成Fiddler后的配置
          • 前提条件
          • 工具配置
  • 手机数据抓取
        • Fiddler手机端配置
        • 手机端操作
  • 实战演示
  • 后记

前言
🏘️🏘️个人简介:以山河作礼。
🎖️🎖️:Python领域新星创作者,CSDN实力新星认证,阿里云社区专家博主
📝​📝第一篇文章《1.认识网络爬虫》获得全站热榜第一,python领域热榜第一
🧾 🧾第四篇文章《4.网络爬虫—Post请求(实战演示)》全站热榜第八
🧾 🧾第八篇文章《8.网络爬虫—正则表达式RE实战》全站热榜第十二
🧾 🧾第十篇文章《10.网络爬虫—MongoDB详讲与实战》全站热榜第八领域热榜第二
🧾 🧾第十三篇文章《13.网络爬虫—多进程详讲(实战演示)》全站热榜第十二
🧾 🧾第十四篇文章《14.网络爬虫—selenium详讲》测试领域热榜第二十
🧾 🧾第十六篇文章《16.网络爬虫—字体反爬(实战演示)》全站热榜第二十五
🧾 🧾第十九篇文章《19.网络爬虫—照片管道》全站综合热榜第十二。
🧾 🧾第二十篇文章《20.网络爬虫—Scrapy-Redis分布式爬虫》全站综合热榜第二十五名,大数据领域第六名
🎁🎁《Python网络爬虫》专栏累计发表二十一篇文章,上榜九篇。欢迎免费订阅!欢迎大家一起学习,一起成长!!
💕💕悲索之人烈焰加身,堕落者不可饶恕。永恒燃烧的羽翼,带我脱离凡间的沉沦。

🎁🎁:文章末尾扫描二维码可以加入粉丝交流群


Fiddler

🧾 🧾Fiddler是一款免费的Web调试代理工具,也是目前最常用的“HTTP”抓包工具之一,它可以截取HTTP/HTTPS流量并且允许你查看、分析和修改这个流量。Fiddler在Web开发和测试中非常有用,因为它可以帮助你检查Web应用程序的性能、调试网络问题和安全漏洞。它还提供了一个可扩展的架构,使得它可以通过插件支持其他功能。Fiddler可用于Windows 、macOS 和Linux等多种操作系统。

安装包提取链接,免费分享给大家:

🎁🎁链接:https://pan.baidu.com/s/1AG7AerCCf0-wzEg8IrYvQQ?pwd=r1js 提取码:r1js

工作原理

Fiddler 是以代理web服务器的形式工作的,它使用代理地址:127.0.0.1, 端口:8888.
当Fiddler会自动设置代(退出的时候它会自动注销代理),这样就不会影响别的程序。不过如果Fiddler非正常退出,这时候因为Fiddler没有自动注销,会造成网页无法访问。解决的办法是重新启动Fiddler.

通过链接下载后,是一个压缩包
在这里插入图片描述

🎯对压缩包进行解压之后,一个是安装流程,一个是exe文件,直接点击exe文件就可以了
在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
🎯打开后的页面是这样的
在这里插入图片描述

安装完成Fiddler后的配置

前提条件

🎯在使用Fiddler抓取数据包的时候,需要满足以下前提条件是

(1)在自己的电脑上安装Fiddler的工具。
(2)电脑连接的网络需要和手机连接同一个网络 否则Andriod不能把HTTP发送到Fiddler的上。

工具配置

🎯 解密HTTPS流量

首先打开Fiddler==》选择“Tools”菜单下的“Options”功能==》点击“HTTPS”。选中"Decrpt HTTPS traffic"

在这里插入图片描述

配置完成后可以对网页数据进行抓包

手机数据抓取

Fiddler手机端配置

🧾 🧾fiddler监听端口默认是 8888,你可以把它设置成任何你想要的端口。

Fiddler==》选择“Tools”菜单下的“Options”功能==》Connections

勾选上 “Allowremote computersto connect” ,允许远程设备连接。其中为了减少干扰,可以去掉 “Act assystem proxy on startup” 。port为代理端口号8888

保持和我一样:
在这里插入图片描述

🎯首先查看自己电脑的IP地址,确保手机和电脑在同一个局域网内

🧾 🧾win+r 然后输入cmd,打开命令窗口,然后输入ipconfig命令查看ip

在这里插入图片描述

手机端操作

🧾 🧾1打开 WiFi 设置页面,选择要连接的 wifi(这里连接的一定要和自己电脑上面的Wifi是同一个Wifi) ,并选择“修改网络”。
在接下来弹出的对话框中,勾选“显示高级选项”。在接下来显示的页面中,点击“代理”,选择“手动
代理服务器主机名设为 PC 的 IP ,代理服务器端口设为 Fiddler 上配置的端口 8888,点“保存”。至此所有的配置已经基本完成。

2 将 Fiddler 代理服务器的证书导到手机上才能抓这些 APP 的包。导入的过程:打开浏览器,在地址栏中输入代理服务器的 IP 和端口(即电脑的IP加fiddler的端口),会看到一个Fiddler 提供的页面,然后确定安装就好了。

在手机浏览器输入电脑ip加端口 例如 192.168.0.156:8888

输入后会进入到网页中并且跳出是否认证,如果不能打开可以重启fiddler

进入网页后选择You can download the FiddlerRoot certificate进行代理证数安装

下载完成后进行安装,点击证书进行证书安装,可以备注证书的名称,Android手机这样一般就可以用了。

iPhone的话还要授权一下,在你手机的 设置–>通用–>关于本机–>证书信任设置–>把刚刚下载的证书打上勾

Fiddler数据参数

Result : 请求的 HTTP(s) 状态吗
Protocol : 请求协议
HOST : 请求的主机名
URL : 请求的资源目录位置
Body : 请求大小
Caching : 请求的缓存
Content-Type : 服务器响应的实体类型
Process : 是谁(进程)发送的
Comments : 备注
Custom : 自定义

实战演示

本次实战以懂车帝为例
🧾 🧾目的是获取头条数据的评论全部获取保存到csv文件,数据要求用户名称 id 评论内容

🎯手机证书安装成功后,接下来重新打开Fiddler。
在打开手机app之前,我们先清楚数据:

在这里插入图片描述

🎯接下来打开手机懂车帝app,随机选择一条头条新闻,然后打开。

我们在fiddler中,看到很多抓包的数据:
在这里插入图片描述
🎯我们想要的数据就在里面,我们应该怎么找到数据呢,我们可以观察头条新闻中的主要信息,然后摘取部分来进行搜索:
在这里插入图片描述

🎯对查找到的数据进行查看;

在这里插入图片描述

🎯我们找到了数据在什么地方,接下来我们需要通过链接将数据获取到本地,方便我们对数据进行解析和提取.
在这里插入图片描述
🎯下一步是通过代码将数据获取到本地,并进行解析:

我们得到的url

url = 'https://api5-normal-lq.dcarapi.com/motor/proxy/comment_list/article/v3/tab_comments/?offset=0&group_id=7223243569958879803&item_id=7223243569958879803&tab_index=0&top_comment_id=0&count=200&aggr_type=1&msg_id=0&device_platform=android&os=android&ssmix=a&_rticket=1683296556004&cdid=24882b7f-2668-4e23-ab20-c9363fb37926&channel=car_xiaomi_64&aid=36&app_name=automobile&version_code=754&version_name=7.5.4&manifest_version_code=754&update_version_code=7543&ab_client=a1%2Cc2%2Ce1%2Cf2%2Cg2%2Cf7&ab_group=3167591%2C3577237&resolution=1080*2250&dpi=440&device_type=M2102J2SC&device_brand=Xiaomi&language=zh&os_api=33&os_version=13&ac=wifi&iid=2307210525559904&device_id=3879510221522280&city_name=%E6%8A%9A%E5%B7%9E&gps_city_name=%E6%8A%9A%E5%B7%9E&selected_city_name&district_name=%E5%8D%97%E4%B8%B0&gps_district_name=%E5%8D%97%E4%B8%B0&rom_version=miui_v140_v14.0.4.0.tgacnxm&longi_lati_type=0&longi_lati_time=0&isTTWebview=1&content_sort_mode=0&total_memory=7.43&cpu_name=Qualcomm+Technologies%2C+Inc+SM8250&overall_score=8.776&cpu_score=8.8777&host_abi=arm64-v8a'

🎯现在又回到了之前我们学过的步骤,知道了url,那我们就可以来获取数据了.
通过代码,我们将数据获取到本地;
在这里插入图片描述

🎯接下来对数据进行解析,拿到我们需要的数据:

import requests
import csv
headers = {'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 13; M2102J2SC Build/TKQ1.220829.002) automobile/7.5.4 cronet/TTNetVersion:d5a7acd8 2022-07-15 QuicVersion:b314d107 2021-11-24'
}head = ['id','昵称','内容']# f = open('懂车帝APP评论.csv', 'w+', encoding='utf-8', newline='')
# csv_file = csv.writer(f)
# csv_file.writerow(head)url = 'https://api5-normal-lq.dcarapi.com/motor/proxy/comment_list/article/v3/tab_comments/?offset=0&group_id=7223243569958879803&item_id=7223243569958879803&tab_index=0&top_comment_id=0&count=200&aggr_type=1&msg_id=0&device_platform=android&os=android&ssmix=a&_rticket=1683296556004&cdid=24882b7f-2668-4e23-ab20-c9363fb37926&channel=car_xiaomi_64&aid=36&app_name=automobile&version_code=754&version_name=7.5.4&manifest_version_code=754&update_version_code=7543&ab_client=a1%2Cc2%2Ce1%2Cf2%2Cg2%2Cf7&ab_group=3167591%2C3577237&resolution=1080*2250&dpi=440&device_type=M2102J2SC&device_brand=Xiaomi&language=zh&os_api=33&os_version=13&ac=wifi&iid=2307210525559904&device_id=3879510221522280&city_name=%E6%8A%9A%E5%B7%9E&gps_city_name=%E6%8A%9A%E5%B7%9E&selected_city_name&district_name=%E5%8D%97%E4%B8%B0&gps_district_name=%E5%8D%97%E4%B8%B0&rom_version=miui_v140_v14.0.4.0.tgacnxm&longi_lati_type=0&longi_lati_time=0&isTTWebview=1&content_sort_mode=0&total_memory=7.43&cpu_name=Qualcomm+Technologies%2C+Inc+SM8250&overall_score=8.776&cpu_score=8.8777&host_abi=arm64-v8a'
html = requests.get(url, headers=headers).json()
num = html['total_number']
dic_list = []
for j in html['data']:txt = j['comment']['text']name = j['comment']['user_name']id = j['comment']['id_str']dic_list.append([id,name,txt])
# for data in dic_list:
#     csv_file.writerow(data)print(dic_list)
# print(html)# f.close()

🎯运行结果如下
在这里插入图片描述
🎯接着我们将数据写入csv文件中

import requests
import csv
headers = {'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 13; M2102J2SC Build/TKQ1.220829.002) automobile/7.5.4 cronet/TTNetVersion:d5a7acd8 2022-07-15 QuicVersion:b314d107 2021-11-24'
}head = ['id','昵称','内容']f = open('懂车帝APP评论.csv', 'w+', encoding='utf-8', newline='')
csv_file = csv.writer(f)
csv_file.writerow(head)url = 'https://api5-normal-lq.dcarapi.com/motor/proxy/comment_list/article/v3/tab_comments/?offset=0&group_id=7223243569958879803&item_id=7223243569958879803&tab_index=0&top_comment_id=0&count=200&aggr_type=1&msg_id=0&device_platform=android&os=android&ssmix=a&_rticket=1683296556004&cdid=24882b7f-2668-4e23-ab20-c9363fb37926&channel=car_xiaomi_64&aid=36&app_name=automobile&version_code=754&version_name=7.5.4&manifest_version_code=754&update_version_code=7543&ab_client=a1%2Cc2%2Ce1%2Cf2%2Cg2%2Cf7&ab_group=3167591%2C3577237&resolution=1080*2250&dpi=440&device_type=M2102J2SC&device_brand=Xiaomi&language=zh&os_api=33&os_version=13&ac=wifi&iid=2307210525559904&device_id=3879510221522280&city_name=%E6%8A%9A%E5%B7%9E&gps_city_name=%E6%8A%9A%E5%B7%9E&selected_city_name&district_name=%E5%8D%97%E4%B8%B0&gps_district_name=%E5%8D%97%E4%B8%B0&rom_version=miui_v140_v14.0.4.0.tgacnxm&longi_lati_type=0&longi_lati_time=0&isTTWebview=1&content_sort_mode=0&total_memory=7.43&cpu_name=Qualcomm+Technologies%2C+Inc+SM8250&overall_score=8.776&cpu_score=8.8777&host_abi=arm64-v8a'
html = requests.get(url, headers=headers).json()
num = html['total_number']
dic_list = []
for j in html['data']:txt = j['comment']['text']name = j['comment']['user_name']id = j['comment']['id_str']dic_list.append([id,name,txt])
for data in dic_list:csv_file.writerow(data)print(dic_list)
# print(html)f.close()

在这里插入图片描述

本次实战演示到此就结束了,感谢你的阅读

后记

本专栏文章到此已经结束,本专栏文章共计22篇,详细讲解爬虫入门到实战,感谢各位的阅读和支持。天行健,君子以自强不息;地势坤,君子以厚德载物。让我们一起努力奋斗下去!!!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/27033.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

29 - Excel 图表与数据分析

Day 29 一、Excel的图表 1.图表的作用 数据图表可直观展示统计信息属性(时间性、数量性等),对知识挖掘和信息直观生动感受起关键作用的图形结构,是一种很好的将对象属性数据直观、形象地"可视化"的手段。 数据图表可…

48种数据分析可视化图表

可视化对于数据分析师来说可能不是最重要的,重要的是你分析或挖掘出来的结果是否有效。在这基础之上就需要通过可视化恰当完整的表达见解。这里又有区别了:实用性和美观性哪个更重要?要我说实用性是第一位的,能用一个元素表达最好…

我们做了一款AI口语外教,寻找测试用户

因为自己学雅思,做了一个AI口语外教,用来练习口语 有两种模式:1.自由对话2.雅思练习与模拟考试 优点如下:1.语音合成真实,聊起来有趣2.参考提示,解决你不会的问题3.雅思模式严格按照话题进行,…

使用new bing来阅读文献

1.下载安装Microsoft Edge Dev版本 Microsoft Edge 预览体验成员 (microsoftedgeinsider.com) 2.打开设置中的discover 3.打开必应 (bing.com) 改地区为美国,账号新建时地区也要改为美国 节点也需要改为美国 4.使用聊天机器人来问一些学术问题 5.打开pdf&…

VueHub:我用 ChatGPT 开发的第一个项目,送给所有 Vue 爱好者

大家好,我是DOM哥。 我用 ChatGPT 开发了一个 Vue 的资源导航网站。 不管你是资深 Vue 用户,还是刚入门想学习 Vue 的小白,这个网站都能帮助到你。 网站地址:VueHub 纯净模式:VueHub 项目托管在 GitHub&#xff0c…

腾讯又一款知名APP宣布下线!已运营8年

上一篇:阿里,似乎又有了新的可能 7月5日,腾讯旗下音频平台企鹅 FM 发布下线公告,公告称,由于业务调整 ,企鹅FM很遗憾要和大家说再见了。即日起,企鹅FM将关闭用户注册及充值功能,并在…

微信:有零钱的微信号不会被系统注销;拼多多旗下 Temu 在美起诉 Shein;Rust 1.71.0 发布|极客头条

「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews) 一分钟速览新闻点&…

互联网惊现 AI 鬼城:人类不得入内;阿里云史上最大规模降价,最高降幅达 50%;可致微信闪退的二维码Bug已找到|极客头条

「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。 整理 | 梦依丹 出品 | CSDN(ID:CSDNnews) 一分钟速览新闻点&…

基于蜂群对花蜜需求所做的数量模型构建及分析

问题重述: 背景:蜜蜂对人类在地球上的生存具有极其重要的作用。除去蜂蜜生产, 蜜蜂还可以通过传粉为我们间接提供食物。自 2007 年以来,由于病毒、杀 虫剂、捕食者和栖息地破坏等因素,世界各地蜜蜂数量显著下降。本文建立 在…

蜜罐技术-威胁狩猎

简介 基于欺骗伪装技术通过在攻击者入侵的关键路径上部署诱饵陷阱诱导攻击者进入与真实网络隔离的蜜网。主动识别攻击痕迹完整记录攻击者行为可以进行追踪溯源 蜜罐分为几下几类: 1.低交互式:低交互式模拟常规的服务,服务存在漏…

沙箱、蜜罐原理浅析

目录 一、沙箱(网络编程虚拟执行环境)1.1 概述1.2 重定向技术1.3 虚拟机和沙箱的区别 二、蜜罐2.1 概述2.2 蜜罐诱捕关键能力2.3 反蜜罐技术2.4 蜜罐的思考 三、网络欺骗(Cyber Deception) 一、沙箱(网络编程虚拟执行环境) 1.1 概…

当 ChatGPT 遇上开源容器安全工具集「问脉」

前言 看到最近铺天盖地的 ChatGPT 相关文章👀,作为一位爱刺激&爱冒险&好奇心强烈&动手能力强的安全技术爱好者(bushi)🤭,按捺不住躁动的灵魂,决定做一个简单的容器安全风险分析工具…

利用蜜罐捕捉攻击实验(31)

预备知识 1、蜜罐的含义和作用 蜜罐(Honeypot)是一种在互联网上运行的计算机系统。它是专门为吸引并诱骗那些试图非法闯入他人计算机系统的人(如电脑黑客)而设计的,蜜罐系统是一个包含漏洞的诱骗系统,它通过模拟一个或多个易受攻击的主机&#xff…

关于网络安全里蜜罐的详细介绍

蜜罐的定义 蜜罐的一个定义来自间谍世界,玛塔哈里 (Mata Hari) 式的间谍将恋爱关系用作窃取秘密的方式,被描述为设置“美人计”或“蜜罐”。经常会有敌方间谍中了美人计,然后被迫交待他/她所知道的一切。 在计算机安全方面,网络…

【网络安全之——蜜罐】

网络安全之蜜罐 1.什么是蜜罐?2.原理是什么?3.蜜罐的分类4.研究现状5.蜜罐的缺点6.Hfish蜜罐的使用介绍 1.什么是蜜罐? 蜜罐是一种主动防御技术,通过主动的暴露一些漏洞、设置一些诱饵来引诱攻击者进行攻击,从而可以对…

ChatGPT 的知识策略,构建低成本的认知助手

ChatGPT 风靡全球!它无处不在。我的朋友不断向我发送 ChatGPT 所做的奇妙和意想不到的事情的例子。ChatGPT 在短短五天内就吸引了超过 100 万用户。 我对 ChatGPT 变得如此出色并不感到惊讶。但令我惊讶的是,在过去两个月中,人们对这些工具的认识有了惊人的增长。这鼓励我帮…

40岁高中老师开源的数据集LAION,改变了生成式AI的未来丨智源大会嘉宾风采

导读 如今,拥有超过50亿个图文对的 LAION数据集已经成为生成式AI未来的中心ーー而随之而来的关于如何监管人工智能的争论也日益激烈。 在德国北部城市汉堡郊区的一栋房屋前,一个信箱上用铅笔潦草地写着一个单词——“ LAION”。这唯一的记号表明&#xf…

OPPO造芯的最后18分钟:CEO数次低头哽咽,3000人团队原地解散

编辑:明敏 杨净 量子位 | 公众号 QbitAI “自古多情空余恨,好梦由来最易醒。” 当OPPO芯片设计公司哲库CEO刘君宣布关停业务解散全员后,停顿数秒、深吸一口气,缓缓说出这样一句诗,似乎总结了自己的所有情绪。 3天前&am…

AI 热潮下,Web3 领域有哪些尚未被发现的宝藏?

整理:angelilu,Foresight News 图片来源:由 无界版图AI 工具生成 这两天社群中传播最多的当属与人工智能预训练语言模型 ChatGPT 的聊天截图,你问我答间也真实感受到了 ChatGPT 的进化,不禁感叹人工智能真的智能了&…

OpenAI CEO谈AI画图明星DALL·E 2:技术突破不多,地气接了不少

Alex 发自 凹非寺量子位 | 公众号 QbitAI 今年都快年末了,蹦出来一个ChatGPT,然后光速走红,服务器都被挤爆好几回。 而往前一看,这样的火爆场面,在4月份DALLE 2发布时也出现过。 不同圈子的人纷纷下场搞起了AI创作&…