python 爬虫实战:掘金文章爬取并保存在 mysql

一、代码目的

最近进行一个掘金爬虫,感觉还是挺有意思的,掘金的爬虫文章好像还是比较少的,记录一下。

二、爬取内容和思路

2.1 爬取内容:

主要包括两部分:
1. 对掘金的文章列表进行爬取,包括文章标题、用户名、文章简介以及文章链接;
2. 具体的文章内容,这部分只爬取了文章标题和内容。
在这里插入图片描述
在这里插入图片描述

2.2 思路

爬取内容的分析

首先分析图一,这部分通过 F12 将请求锁定在 https://apinew.juejin.im/search_api/v1/search,这是一个 post 请求,返回的 data 中有 20 个左右数据。并且每次下拉滚动条加载的新数据都是从这个链接得到。

在这部分代码里,主要是 payload 中有一个 cursor 变量,这个变量定位了下一次申请的 cursor,有点链表的感觉,添加了这部分的更新之后,每次 post 请求得到的内容就会和下拉滚动栏效果相同。

关于这个 cursor 的部分,我以前没有接触过这种更新方式,由于现在我找到的掘金爬虫文章比较老,没有看到提到这个部分的。

在这里插入图片描述

在这里插入图片描述
接着是具体文章的爬取,这部分比较简单了,直接对 https://apinew.juejin.im/content_api/v1/article/detail 进行爬取,这也是一个 post 请求,返回值中 content 就是文章的全部内容。

在这里插入图片描述
在这里插入图片描述

存储到 mysql

将爬取内容存储到mysql,这部分主要是参考了《如何将爬虫的数据添加到mysql数据库中》。这个对初学者还是很友好的,而且代码的结构也很好,我自己根据自己的情况,添加了部分代码。

由于我存储的内容比较长,我将content 设置尾 longtext

存入数据库的效果如下:

briefContent
content

三、总结

最终的代码结构如下:
在这里插入图片描述
具体代码链接:https://github.com/tonggongzhiqiu/jueJinSpider

  • 3
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 6
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值