Python爬虫新手教程:实战APP抓包,抖音的小姐姐等着我!

Python爬虫新手教程:实战APP抓包,抖音的小姐姐等着我!

APP捕获包

之前我们学到了一些关于Python抓取工具的知识,但他们都是根据PC端浏览器页面的内容进行抓取。如今,移动应用程序的使用越来越多,其中许多都没有网页。例如,如果颤音中没有网页,则无法批量抓取上面的视频?

当然,学习Python会很困难。没有好的学习资料,我该如何学习?

答案当然是否定的!对于App,应用程序内的通信过程类似于网页,向后台发送请求以获取数据。在浏览器中,我们可以通过打开调试工具来查看具体的请求内容,我们无法在应用程序中直接看到。因此,我们需要通过捕获工具获取有关App请求和响应的信息。关于捕获工具有Wireshark,Fiddler,Charles等。今天我们将讨论如何使用Fiddler来捕获移动应用程序。

Fiddler像代理人一样工作。配置完成后,我们从移动应用程序发送的请求由Fiddler发送,服务器返回的信息也由Fiddler中继。因此,通过Fiddler,我们可以看到应用程序发送到服务器的请求以及来自服务器的响应。

每个人在学习python时都会遇到很多问题,以及对新技术的追求,这里我们推荐我们的Python学习演绎qun:,这里是python学习者的聚集地!同时,我是一名高级Python开发工程师,从基本的python脚本到Web开发,爬行,django,数据挖掘等,从零基础到面向项目的数据。给每个python合作伙伴!分享一些每天需要关注的学习方法和小细节

Fiddler安装配置

安装Fiddler后,首先在菜单工具>选项> Https下面的两个位置选择它们。

然后在“连接”选项卡下选中“允许远程计算机连接”,以允许Fiddler接受来自其他设备的请求。

还记得这里的端口号,默认是8088,当你需要填写手机时。

配置完成后,必须关闭Fiddler并在保存后重新打开。

移动终端配置

确保手机和计算机位于同一LAN上。让我们看一下计算机的IP地址,并在cmd中输入ipconfig来查看它。我的电脑使用无线网络,因此IP地址为192.168.1.3。

打开手机的无线连接,然后选择要连接的热点。按住以修改网络,在代理中填写计算机的IP地址和Fiddler代理的端口。如下图所示:

保存后,在手机的本机浏览器中打开 8008,这是我们的计算机IP和上面的端口。这一步我无法在夸克浏览器中打开,它必须打开浏览器自己的浏览器。

打开后,单击下面的链接下载证书并安装证书。

计算机浏览器还需要打开该地址并安装证书以方便将来对浏览器的捕获操作。

安装完毕后,一切正常。您可以使用手机打开应用程序,然后抓住Fiddler上的包。

捕获包

我们打开颤音应用程序,并在Fiddler上找到很多连接。让我们清空无用的连接信息,然后滑到某人的主页上查看他发布的所有视频,并在Fiddler上找到视频链接。

观察和筛选后,我们可以看到上图是我们需要的请求地址。此地址可以在浏览器中打开,但我们需要更改浏览器的User-Agent。我使用Firefox插件。 Fiddler右侧的信息是相同的。让我们来看看Fiddler右侧对请求的响应。

我看到我返回了一个JSON格式的消息,其中aweme_list是我们需要的视频地址,而has_more=1表示向上滚动会加载更多。然后你可以编写代码。

代码

代码非常简单,正如我们在前面的文章中所说,您可以直接请求相应的链接请求。

代码只是一个简单的例子。只需下载当前页面的内容即可。如果要下载所有视频,可以根据JSON结果中的has_more和max_cursor参数构造新的URL地址。

可以根据要爬网的用户更改URL中的user_id。您可以通过将用户共享到微信,然后在浏览器中打开链接,在打开的URL中看到用户的user_id。

运行后,您可以获得视频列表:

96

IT Dove

2019.08.03 14: 12

字数1284

APP捕获包

之前我们学到了一些关于Python抓取工具的知识,但他们都是根据PC端浏览器页面的内容进行抓取。如今,移动应用程序的使用越来越多,其中许多都没有网页。例如,如果颤音中没有网页,则无法批量抓取上面的视频?

当然,学习Python会很困难。没有好的学习资料,我该如何学习?

答案当然是否定的!对于App,应用程序内的通信过程类似于网页,向后台发送请求以获取数据。在浏览器中,我们可以通过打开调试工具来查看具体的请求内容,我们无法在应用程序中直接看到。因此,我们需要通过捕获工具获取有关App请求和响应的信息。关于捕获工具有Wireshark,Fiddler,Charles等。今天我们将讨论如何使用Fiddler来捕获移动应用程序。

Fiddler像代理人一样工作。配置完成后,我们从移动应用程序发送的请求由Fiddler发送,服务器返回的信息也由Fiddler中继。因此,通过Fiddler,我们可以看到应用程序发送到服务器的请求以及来自服务器的响应。

每个人在学习python时都会遇到很多问题,以及对新技术的追求,这里我们推荐我们的Python学习演绎qun:,这里是python学习者的聚集地!同时,我是一名高级Python开发工程师,从基本的python脚本到Web开发,爬行,django,数据挖掘等,从零基础到面向项目的数据。给每个python合作伙伴!分享一些每天需要关注的学习方法和小细节

Fiddler安装配置

安装Fiddler后,首先在菜单工具>选项> Https下面的两个位置选择它们。

然后在“连接”选项卡下选中“允许远程计算机连接”,以允许Fiddler接受来自其他设备的请求。

还记得这里的端口号,默认是8088,当你需要填写手机时。

配置完成后,必须关闭Fiddler并在保存后重新打开。

移动终端配置

确保手机和计算机位于同一LAN上。让我们看一下计算机的IP地址,并在cmd中输入ipconfig来查看它。我的电脑使用无线网络,因此IP地址为192.168.1.3。

打开手机的无线连接,然后选择要连接的热点。按住以修改网络,在代理中填写计算机的IP地址和Fiddler代理的端口。如下图所示:

保存后,在手机的本机浏览器中打开 8008,这是我们的计算机IP和上面的端口。这一步我无法在夸克浏览器中打开,它必须打开浏览器自己的浏览器。

打开后,单击下面的链接下载证书并安装证书。

计算机浏览器还需要打开该地址并安装证书以方便将来对浏览器的捕获操作。

安装完毕后,一切正常。您可以使用手机打开应用程序,然后抓住Fiddler上的包。

捕获包

我们打开颤音应用程序,并在Fiddler上找到很多连接。让我们清空无用的连接信息,然后滑到某人的主页上查看他发布的所有视频,并在Fiddler上找到视频链接。

观察和筛选后,我们可以看到上图是我们需要的请求地址。此地址可以在浏览器中打开,但我们需要更改浏览器的User-Agent。我使用Firefox插件。 Fiddler右侧的信息是相同的。让我们来看看Fiddler右侧对请求的响应。

我看到我返回了一个JSON格式的消息,其中aweme_list是我们需要的视频地址,而has_more=1表示向上滚动会加载更多。然后你可以编写代码。

代码

代码非常简单,正如我们在前面的文章中所说,您可以直接请求相应的链接请求。

代码只是一个简单的例子。只需下载当前页面的内容即可。如果要下载所有视频,可以根据JSON结果中的has_more和max_cursor参数构造新的URL地址。

可以根据要爬网的用户更改URL中的user_id。您可以通过将用户共享到微信,然后在浏览器中打开链接,在打开的URL中看到用户的user_id。

运行后,您可以获得视频列表:

APP捕获包

之前我们学到了一些关于Python抓取工具的知识,但他们都是根据PC端浏览器页面的内容进行抓取。如今,移动应用程序的使用越来越多,其中许多都没有网页。例如,如果颤音中没有网页,则无法批量抓取上面的视频?

当然,学习Python会很困难。没有好的学习资料,我该如何学习?

答案当然是否定的!对于App,应用程序内的通信过程类似于网页,向后台发送请求以获取数据。在浏览器中,我们可以通过打开调试工具来查看具体的请求内容,我们无法在应用程序中直接看到。因此,我们需要通过捕获工具获取有关App请求和响应的信息。关于捕获工具有Wireshark,Fiddler,Charles等。今天我们将讨论如何使用Fiddler来捕获移动应用程序。

Fiddler像代理人一样工作。配置完成后,我们从移动应用程序发送的请求由Fiddler发送,服务器返回的信息也由Fiddler中继。因此,通过Fiddler,我们可以看到应用程序发送到服务器的请求以及来自服务器的响应。

每个人在学习python时都会遇到很多问题,以及对新技术的追求,这里我们推荐我们的Python学习演绎qun:,这里是python学习者的聚集地!同时,我是一名高级Python开发工程师,从基本的python脚本到Web开发,爬行,django,数据挖掘等,从零基础到面向项目的数据。给每个python合作伙伴!分享一些每天需要关注的学习方法和小细节

Fiddler安装配置

安装Fiddler后,首先在菜单工具>选项> Https下面的两个位置选择它们。

然后在“连接”选项卡下选中“允许远程计算机连接”,以允许Fiddler接受来自其他设备的请求。

还记得这里的端口号,默认是8088,当你需要填写手机时。

配置完成后,必须关闭Fiddler并在保存后重新打开。

移动终端配置

确保手机和计算机位于同一LAN上。让我们看一下计算机的IP地址,并在cmd中输入ipconfig来查看它。我的电脑使用无线网络,因此IP地址为192.168.1.3。

打开手机的无线连接,然后选择要连接的热点。按住以修改网络,在代理中填写计算机的IP地址和Fiddler代理的端口。如下图所示:

保存后,在手机的本机浏览器中打开 8008,这是我们的计算机IP和上面的端口。这一步我无法在夸克浏览器中打开,它必须打开浏览器自己的浏览器。

打开后,单击下面的链接下载证书并安装证书。

计算机浏览器还需要打开该地址并安装证书以方便将来对浏览器的捕获操作。

安装完毕后,一切正常。您可以使用手机打开应用程序,然后抓住Fiddler上的包。

捕获包

我们打开颤音应用程序,并在Fiddler上找到很多连接。让我们清空无用的连接信息,然后滑到某人的主页上查看他发布的所有视频,并在Fiddler上找到视频链接。

观察和筛选后,我们可以看到上图是我们需要的请求地址。此地址可以在浏览器中打开,但我们需要更改浏览器的User-Agent。我使用Firefox插件。 Fiddler右侧的信息是相同的。让我们来看看Fiddler右侧对请求的响应。

我看到我返回了一个JSON格式的消息,其中aweme_list是我们需要的视频地址,而has_more=1表示向上滚动会加载更多。然后你可以编写代码。

代码

代码非常简单,正如我们在前面的文章中所说,您可以直接请求相应的链接请求。

代码只是一个简单的例子。只需下载当前页面的内容即可。如果要下载所有视频,可以根据JSON结果中的has_more和max_cursor参数构造新的URL地址。

可以根据要爬网的用户更改URL中的user_id。您可以通过将用户共享到微信,然后在浏览器中打开链接,在打开的URL中看到用户的user_id。

运行后,您可以获得视频列表: