python网页数据抓取(前几天在看崔庆才老师的教程:网址结构网址url)

优采云 发布时间: 2022-01-19 08:08

  python网页数据抓取(前几天在看崔庆才老师的教程:网址结构网址url)

  前几天在看崔庆才老师的教程,使用Scrapy抓取知乎用户信息,使用了递归。我之前写的爬虫将已知固定数据的url存储在列表中,然后遍历列表中的url。这次短书,我们用递归来试一试。

  什么是递归

  程序(或函数)调用自身的一种编程技术称为递归。一个过程或函数在其定义或规范中具有直接或间接调用自身的方法,这通常将一个大而复杂的问题转化为与原创问题相似的较小问题来解决。

  递归的优点

  1、降低题目难度

  2、大大减少程序的代码大小

  3、递归的威力在于使用有限语句来定义无限的对象集

  这个案例

  如果看图麻烦,可以先看邓登录制的视频讲解,请点击链接

  【python爬虫】如何抓到优质短书用户(请允许我放个广告)

  

  关注获取项目源码

  

  在这种情况下,我们需要抓取简书优质用户的信息,如昵称、id、文章的数量、采集数量、字数、获得的点赞数等。我们只捕获用户 ta 关注的人。至于这个ta的粉丝,我们不抓。相对来说,他关注的人,比他的粉丝素质更高。

  从初始用户开始,比如邓旭东HIT关注的用户列表,得到邓旭东关注的25个用户A、B、C。

  然后依次抓取这25个用户关注的用户

  循环的前两个步骤

  我们先来分析一下URL结构

  网址网址分析

  我们发现当我向下滚动关注列表时,页面底部会加载并且图像的左下角还有更多

  下列的?page=3 及以下?page=4 两个 xhr 类型的文件。

  

  鼠标悬停在下面?page=3文件上方,浮动弹出一个URL

  http://www.jianshu.com/users/1562c7f16a04/following?page=3

  

  我们用鼠标点击下面的?page=3,点击Headers,发现请求的url是

  http://www.jianshu.com/users/1562c7f16a04/following?page=3

  

  那么问题来了,页码是怎么构造的呢?

  我们发现用户的follower数除以10,然后取整数,最大页数加1。

  比如邓旭东关注了25个人,那么一共有三个页面:page=1, page=2, page=3

  现在我们已经建立

  既然有了URL,我们就开始分析网页源代码中要抓取的数据存放在哪里?

  网页分析

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线