admin管理员组

文章数量:1597400

1. Fiddler 设置

这是使用 fiddler 进行手机 app 的抓包,也可以使用 Charles,burpSuite 等。。。

  • 电脑安装 Fiddler,
  • 手机 和 安装 fiddler 的电脑处于同一个网络里, 否则手机不能把 HTTP 发送到 Fiddler 的机器上来。

配置 Fiddler,允许"远程连接"。用 Fiddler 对 Android 应用进行抓包

启动Fiddler,打开菜单栏中的 Tools > Fiddler Options,打开“Fiddler Options”对话框。

在Fiddler Options”对话框切换到“Connections”选项卡,然后勾选“Allow romote computers to connect”后面的复选框,然后点击“OK”按钮。

在本机命令行输入:ipconfig,找到本机的 ip 地址。

2. 移动设备设置

2.1. 安卓手机设置

Android 设备上的代理服务器设置“”

  • 打开 android 设备的 “设置”->“WLAN”,找到你要连接的网络,在上面长按,然后选择“修改网络”,弹出网络设置对话框,在接下来弹出的对话框中,勾选“显示高级选项”。在接下来显示的页面中,点击“代理”,选择“手动”。然后在“代理服务器主机名”后面的输入框输入电脑的ip地址,在“代理服务器端口”后面的输入框输入8888,然后点击“保存”按钮。

代理服务器主机名设为 PC 的 IP,代理服务器端口设为Fiddler上配置的端口8888,点"保存"。

然后启动 android 设备中的浏览器,访问百度的首页,在 fiddler 中可以看到完成的请求和响应数据。

2.2. IOS 应用进行抓包

打开 IPhone, 找到网络连接, 打开 HTTP 代理, 输入 Fiddler 所在机器的 IP 地址(比如:192.168.1.104) 以及 Fiddler 的端口号8888

2.3 安装证书、捕获 HTTPS 

只能捕获 HTTP,而不能捕获 HTTPS 的解决办法:

  • 为了让 Fiddler 能捕获 HTTPS 请求,需要在 安卓设备 或者 苹果设备上安装 证书

IOS 设备步骤:

  1. 首先要知道 Fiddler 所在的机器的 IP 地址:假如我安装了 Fiddle r的机器的IP地址是:192.168.1.104
  2. 打开IPhone 的Safari, 访问 http://192.168.0.52:8888, 点"FiddlerRoot certificate" 然后安装证书

过证书校验

上面的设置还不能抓像招商银行、支付宝等 APP的 https 包,因为这些 APP 对 https 证书进行了校验,还需要将 Fiddler 代理服务器的证书导到 Android 设备上才能抓这些 APP 的包

导入的过程:

打开浏览器,在地址栏中输入代理服务器的IP和端口,会看到一个Fiddler提供的页面:

点击页面中的 “FiddlerRootcertificate” 链接,接着系统会弹出对话框:

输入一个证书名称,然后直接点“确定”就好了。

注意:用完了, 记得把 IPhone 上的 Fiddle r代理关闭, 以免 IPhone 上不了网。

也可以使用模拟器,例如:雷电、夜神、蓝叠  等等。。

3. 斗鱼app、妹子图app

斗鱼 官网:https://www.douyu/    斗鱼 app 下载:https://www.douyu/client?tab=client#mobile

可以到 妹子图官网 下载 妹子图app

创建项目 'douyu'

scrapy startproject douyu

树形图展示项目

cd douyu/
tree

Sublime 打开项目

subl .

生成采集模块 spider

使用 genspider 在当前项目中创建 spider。语法: scrapy genspider [-t template] <name> <domain>

$ scrapy genspider -l
Available templates:
  basic
  crawl
  csvfeed
  xmlfeed

$ scrapy genspider -d basic
import scrapy

class $classname(scrapy.Spider):
    name = "$name"
    allowed_domains = ["$domain"]
    start_urls = (
        'http://www.$domain/',
        )

    def parse(self, response):
        pass

$ scrapy genspider -t basic example example
Created spider 'example' using template 'basic' in module:
  mybot.spiders.example

创建:

scrapy genspider douyu_spider douyucdn

编辑项目

item.py

import scrapy

class DouyuItem(scrapy.Item):
    # define the fields for your item here like:
    data = scrapy.Field()
    image_path = scrapy.Field()
    pass

setting.py

设置 USER_AGENT

本文标签: 爬虫教程数据手机app