一个大胆的想法,爬取简书所有的文章信息

作者: 渔父歌 | 来源:发表于2018-07-12 20:20 被阅读106次

在上一篇我们写了一个爬虫脚本,这个脚本可以通过用户的 uid爬取对应用户的所有文章的信息并保存到本地。

既然我们已经可以爬取单个用户的所有文章了,那我们就想,是否能够爬取更多用户的文章信息?

比如说我们定个小目标:爬取所有简书用户的文章信息。

这个小目标好像有点难度,那我们再定一个小小目标,先爬他个一万篇文章的信息。

这样看起来就简单多了,等我们爬到了一万篇文章信息,再爬十万、一百万、一 ... ..、最后就是简书所有的文章了,嘿嘿嘿( •̀ ω •́ )y。

既然已经确定了目标,那么就让我们行动起来。

项目文章,想看结果的可以点下面链接:
一:实战:爬取简书之搭建程序框架

一、爬取思路

磨刀不误砍柴工,在敲代码之前让我们先来讨论一下应该怎么爬取。

清晰的思路往往可以使我们的劳动达到事半功倍的效果。

第一个问题:如何获取用户 uid

我们知道,每个用户都会关注一些其他的用户,而这些被关注的用户也有自己关注的用户,这样一直循环。

所以我们的爬虫思路就是,先找一批关注数量较多的用户,以这些用户为起点,爬取他们所关注的用户。

这样我们就获得了第一批的用户 uid,然后在第一批用户的基础上再爬取第一批用户的关注,这样我们就获得了第二批用户,如此往复,只要时间够长,我们就能够获取简书绝大部分的用户 uid。

第二个问题:如何获取用户文章信息

这个问题我们已经在上一篇讲过了,不知道的可以取看看

python爬虫系列之数据存储实战:爬取简书用户文章列表并保存

第三个问题:如何保存数据

对于较大的数据量,数据库肯定是第一选择。但是我们还没讲过如何使用数据库,所以只好用 csv了。

那为什么不用 json呢?原因我们在上一篇讲过,json不能逐条保存数据,而我们要爬取的数据量又比较大,不能全保存在缓存里等到最后再写入,所以就只能用 csv了。

二、程序结构

  1. 请求模块

    接受一个 url,返回 url对应网页的 xpath对象

    需求:

    • 能随机切换 user-agent
    • 可以设置代理
    • 能对返回结果进行一定的预处理
  2. uid 解析模块

    解析用户 uid

    需求:

    • 能够自动去除已爬取过的 uid
    • 可以不断返回 uid-->生成器
  3. 数据爬取模块

    接受一个 uid作为参数,返回 uid对应用户的所有文章信息

    需求:

    • 返回信息为字典格式
    • 自动判断是否爬取结束
  4. 数据保存模块

    接受一个字典的列表,将数据保存到对应的文件中

    需求:

    • 将字典格式的数据保存到文件中
  5. 断点续爬

    在出现意外情况后能够从上次中断的地方继续爬取

    需求:

    • 断点续爬

以上就是程序的大体框架和功能,细节部分后面我们慢慢完善。

如果你有什么想法,欢迎评论留言一起参与这个项目。

项目的源代码会发布在 GitHub上,下一篇我们先把程序的框架完成。

觉得写的不错?点赞、评论、关注三连来一套(。^^)

上一篇:python爬虫系列之数据存储实战:爬取简书用户文章列表并保存
下一篇:实战:爬取简书之搭建程序框架

相关文章

  • 一个大胆的想法,爬取简书所有的文章信息

    在上一篇我们写了一个爬虫脚本,这个脚本可以通过用户的 uid爬取对应用户的所有文章的信息并保存到本地。 既然我们已...

  • Scrapy + Selenium 爬取简书网

    1. 项目思路 需求:1. 爬取简书上的所有文章;2. 爬取文章的标签;3. 爬取文章的作者信息、浏览量、字数、评...

  • 实战爬取简书网热评文章(基于lxml及多进程爬虫方法)

    目标 爬取简书网“首页投稿”热评文章的信息,包括用户ID(author)、文章标题(title)、文章内容(con...

  • 爬取简书文章

    爬取目标:简书七日热门的文章数据(如标题,作者,阅读量,评论,喜欢等等),并把这些数据存放到Mongodb中! 接...

  • 简书用户动态信息爬虫

    第一步 爬取简书推荐用户 爬取简书推荐用户,加入到用户信息表(第一批用户) 第二步 从推荐用户出发,爬取每个推荐用...

  • 简书用户动态信息爬虫

    第一步 爬取简书推荐用户 爬取简书推荐用户,加入到用户信息表(第一批用户) 第二步 从推荐用户出发,爬取每个推荐用...

  • 简书文章url爬取

    爬去简书文章url, 由于简书有两种加载页面方式 页面下拉加载更多,附带的参数为上面的文章id与page值下拉加载...

  • 总结:爬取简书文章

    本周总结链接:爬取简书文章—requests\Beautifulsoup库的运用 1月20号更新,见上篇。本周学习...

  • Python第二试

    爬取简书首页信息,包括:标题,作者,发表时间,阅读量,评论数,点赞数,打赏数,所投专题 因为自己看过一篇别人写的爬...

  • 实战:爬取简书之多线程爬取(一)

    在上上篇我们编写了一个简单的程序框架来爬取简书的文章信息,10分钟左右爬取了 1万 5千条数据。 现在,让我们先来...

网友评论

  • 柠樂helen:爬完用在什么场景
    渔父歌:@柠樂helen 也可以用来做数据分析,比如什么样的标题阅读数量多
    渔父歌:@柠樂helen 筛选优质文章,为进一步爬取提供数据,其他的就看你想法了
  • 孙亖:然后怎么使用?
    渔父歌:@孙亖 代码还没开始敲呢,完成品的话,直接运行就行。

本文标题:一个大胆的想法,爬取简书所有的文章信息

本文链接:https://www.haomeiwen.com/subject/opzrpftx.html