【scrapy实战】---- 利用get方法爬取动态网站,将数据存入到postgresql中

本文介绍如何使用Python爬取极客公园网站的文章标题、作者和摘要,通过分析页面请求和JSON数据,实现多页爬取,并将数据存储到PostgreSQL数据库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我以极客公园为例,爬取文章标题,作者名,文章摘要。

我们打开chrome中的开发者工具,然后我们重新加载一下网页,你可以看到文章标题需要你点加载更多才能出现,之后你会看到如下显示:

我们在General中的Request Method看到是GET,说明这个请求方法是GET方法,之后你会发现并没有post方法,所以用Splash似乎不行。再多点加载更多让文章出现得更多,你会发现Request URL的变化只有page的页数。换句话说就是:

第一页是:https://mainssl.geekpark.net/api/v2?page=1

第二页是:https://mainssl.geekpark.net/api/v2?page=2

第三页是:https://mainssl.geekpark.net/api/v2?page=3

..........................

第n页是:  https://mainssl.geekpark.net/api/v2?page=n

之后我们打开其中一页,比如第一页:

你会看到网页是以json形式存储的,并且一个page存储20篇文章,但要注意文章是从0开始的。(之后我们写代码是这里会很重要)

打开其中一篇文章你可以看到:

这时候你可以看到文章的标题,摘要,作者名,id,发表时间等等。然后开始写代码了~~

在item.py中我们先定义item数据结构:

之后写爬虫:

打开终端输入scrapy crawl geekpark。爬虫就会运行成功。但是我们并没有将数据存入,之后我在postgresql中建一个关于爬虫数据相关的表。并在scrapy项目中的pipeline.py写下如下代码:

之后再运行一次爬虫就可以了。数据在postgresql中就存成这样了:

 

 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值