1. Python爬虫入门教程 爬取背景

2019年1月10日深夜,打开了百思不得姐APP,想了一下是否可以爬呢?不自觉的安装到了夜神模拟器里面。这个APP还是比较有名和有意思的。

下面是百思不得姐的简介

年度超好玩的搞笑内容平台,整个互联网能嗨翻宇宙的神级脑洞大神段子手们都在这..
新鲜的视频,爆笑的段子,有趣的GIF囧图,承包所有你无聊的时间。
更有“姐夫”们毁天灭地“神评论”,花式吐槽,脑洞大开,人人都是段子手……

1500W的下载量,用户群体比较庞大。

2. 爬虫的抓包分析阶段

安装到模拟器内部,打开Fiddler,运行程序,看下图,左侧最后出现的链接,就是我们想要的了

得到待爬取连接如下,所有的request请求,注意到,并没有什么加密参数

GET http://s.budejie.com/v2/topic/list/10/0-0/budejie-android-8.0.1/0-25.json?uid=&t=&market=360zhushou&client=android&appname=budejie&device=&jdk=1&ver=8.0.1&udid=&from=android HTTP/1.1

ver: 8.0.1

client: android

market: 360zhushou

udid: 866174010820641

mac: 9C:30:5B:38:35:2F

os: 4.4.2

appname: budejie

visiting:

Referer: http://www.budejie.com

t: 1547132330768

Host: s.budejie.com

Connection: Keep-Alive

Accept-Encoding: gzip

去掉无用参数, 得到如下链接

http://d.api.budejie.com/v2/topic/list/29/0-0/budejie-android-8.0.1/0-25.json

剩下的就是分析了

3. 分析页面规律,得到链接拼接方式

爬虫就是要找到链接的规律,下面是第一页和第二页的数据

http://d.api.budejie.com/v2/topic/list/29/0-0/budejie-android-8.0.1/0-25.json
http://d.api.budejie.com/v2/topic/list/29/29082060-28984879/budejie-android-8.0.1/1544334121-25.json

提取公用部分

http://d.api.budejie.com/v2/topic/list/29/{参数1}-{参数2}/budejie-android-8.0.1/{参数3}-25.json

三个参数位置发生了改变

还有两个数字,一个是29,这个目测应该是类别,一个是25,这个应该是每页显示的数据条数

那么我们看一下,第二个链接中参数1,2,3分别是怎么得到的就可以了,看一下第一页的返回数据

上图得到参数3的值

展开list看到第一项的id为29082060 OK,得到参数1的值了,最后一项肯定是参数2的值,那么我们找到对应参数之后剩下的就是编码了。

4. 爬虫具体编码部分

依旧是你自己来写吧~任何一个模块或者爬虫框架都是很容易就可以实现的,重要的是我们抓到了对应链接就可以了。

百思不得姐手机APP收工

Python爬虫入门教程 43-100 百思不得姐APP数据-手机APP爬虫部分的更多相关文章

  1. Python爬虫入门教程 48-100 使用mitmdump抓取手机惠农APP-手机APP爬虫部分

    1. 爬取前的分析 mitmdump是mitmproxy的命令行接口,比Fiddler.Charles等工具方便的地方是它可以对接Python脚本. 有了它我们可以不用手动截获和分析HTTP请求和响应 ...

  2. Python爬虫入门教程 42-100 爬取儿歌多多APP数据-手机APP爬虫部分

    1. 儿歌多多APP简单分析 今天是手机APP数据爬取的第一篇案例博客,我找到了一个儿歌多多APP,没有加固,没有加壳,没有加密参数,对新手来说,比较友好,咱就拿它练练手,熟悉一下Fiddler和夜神 ...

  3. Python爬虫入门教程 30-100 高考派大学数据抓取 scrapy

    1. 高考派大学数据----写在前面 终于写到了scrapy爬虫框架了,这个框架可以说是python爬虫框架里面出镜率最高的一个了,我们接下来重点研究一下它的使用规则. 安装过程自己百度一下,就能找到 ...

  4. Python爬虫入门教程 3-100 美空网数据爬取

    美空网数据----简介 从今天开始,我们尝试用2篇博客的内容量,搞定一个网站叫做"美空网"网址为:http://www.moko.cc/, 这个网站我分析了一下,我们要爬取的图片在 ...

  5. Python爬虫入门教程 31-100 36氪(36kr)数据抓取 scrapy

    1. 36氪(36kr)数据----写在前面 今天抓取一个新闻媒体,36kr的文章内容,也是为后面的数据分析做相应的准备的,预计在12月底,爬虫大概写到50篇案例的时刻,将会迎来一个新的内容,系统的数 ...

  6. Python爬虫入门教程 38-100 教育部高校名单数据爬虫 scrapy

    爬前叨叨 今天要爬取一下正规大学名单,这些名单是教育部公布具有招生资格的高校名单,除了这些学校以外,其他招生的单位,其所招学生的学籍.发放的毕业证书国家均不予承认,也就是俗称的野鸡大学! 网址是 ht ...

  7. Python爬虫入门教程石家庄链家租房数据抓取

    1. 写在前面 这篇博客爬取了链家网的租房信息,爬取到的数据在后面的博客中可以作为一些数据分析的素材.我们需要爬取的网址为:https://sjz.lianjia.com/zufang/ 2. 分析网 ...

  8. Python爬虫入门教程 22-100 CSDN学院课程数据抓取

    1. CSDN学院课程数据-写在前面 今天又要抓取一个网站了,选择恐惧症使得我不知道该拿谁下手,找来找去,算了,还是抓取CSDN学院吧,CSDN学院的网站为 https://edu.csdn.net/ ...

  9. Python爬虫入门教程 37-100 云沃客项目外包网数据爬虫 scrapy

    爬前叨叨 2019年开始了,今年计划写一整年的博客呢~,第一篇博客写一下 一个外包网站的爬虫,万一你从这个外包网站弄点外快呢,呵呵哒 数据分析 官方网址为 https://www.clouderwor ...

随机推荐

  1. 一句python代码搭建FTP服务

    环境搭建: python windows/linux pip install pyftpdlib (安装失败请到这里下载:https://pypi.python.org/pypi/pyftpdlib/ ...

  2. Golang 通用连接池库 Golang-Pool

    Golang 实现的连接池 功能: * 连接池中连接类型为interface{},使得更加通用 * 链接的最大空闲时间,超时的链接将关闭丢弃,可避免空闲时链接自动失效问题 * 使用channel处理池 ...

  3. 如果裸写一个goroutine pool

    引言 在上文中,我说到golang的原生http server处理client的connection的时候,每个connection起一个goroutine,这是一个相当粗暴的方法.为了感受更深一点, ...

  4. 【差分+前缀和】BZOJ1637: [Usaco2007 Mar]Balanced Lineup

    Description Farmer John 决定给他的奶牛们照一张合影,他让 N (1 ≤ N ≤ 50,000) 头奶牛站成一条直线,每头牛都有它的坐标(范围: 0..1,000,000,000 ...

  5. #oracle恢复已被commit删除的内容

    1.FLASHBACK QUERY 闪回到15分钟前 SELECT * FROM tablename AS OF TIMESTAMP(SYSTIMESTAMP - INTERVAL '15' MINU ...

  6. 8天入门docker系列 —— 第二天 通过一个aspnetcore程序加深对容器的理解

    我们知道容器是一个打包了应用和相关依赖的盒子,那怎么去操控这个盒子呢? 这一篇我通过一个简单的aspnetcore程序来加深对盒子的理解,使用之前先 安装一下Docker的环境. 一:Docker的安 ...

  7. 第9章 设备授权端点(Device Authorization Endpoint) - IdentityModel 中文文档(v1.0.0)

    OAuth 2.0设备流设备授权的客户端库是作为HttpClient扩展方法提供的. 以下代码发送设备授权请求: var client = new HttpClient(); var response ...

  8. c# 创建Excel com加载项图片对象批量操作

    技术含量较低,主要是通过VBA代码转换成c#代码而来,从而实现图片批量插入.删除.另存为的批量操作,增加文档使用的通用性. 插件主要界面如下: 主要代码如下: private void button8 ...

  9. C# 接口的使用(工厂模式)

    接口(interface)与抽象类(abstract)的区别: 相同点: 1.都不能被直接实例化,都可以通过继承实现其抽象方法. 2.都是面向抽象编程的技术基础,实现诸多模式 不同点: 1.接口可以多 ...

  10. 正确分析结构使用正确的HTML标签。CSS样式写一起。

    在内容中 一行内容包括三张图片,每张图片下面有标题和具体介绍,那么可以使用: 分析和解决如下步骤: 1,一行三块,先向左浮动成为一行float:left. 2,把他们的宽度平分三份,33.3%.三份都 ...