抓取网页新闻(学习了几天如何使用scrapy去爬取静态网站(图))
优采云 发布时间: 2021-09-16 03:23抓取网页新闻(学习了几天如何使用scrapy去爬取静态网站(图))
几天来,我已经学会了如何通过使用图表对静态网站进行爬网。今天我尝试抓取动态加载的网站。选择的网站是*敏*感*词*的知识。这篇文章不会详细解释如何像往常一样完成每一步,而是讨论如何攀登
您无法获取源代码中的所有数据(有些根本没有数据),但您可以看到网址保持不变,但通过下拉滑块加载了数据。毫无疑问,这是一个动态加载的网页。下面介绍如何查找API接口以获取数据
打开developer工具,选择network,refresh,然后选择XHR,如图所示
您可以从一开始就逐个单击以检查响应(响应指的是工作台上的响应,如下图所示)是否是您想要的数据。或者滑动滑动条,查看新请求的名称中是否有类似的请求,通常是
这里我们重点关注区块链数据,如图所示:
然后检查消息头的URL,例如“HTTPS:///apiv1/content/lifes?”?渠道=区块链渠道&;客户机=pc&;光标=1518567654&;极限=20’
所需参数为:
channel=blockchain-channel
client=pc
cursor=1518567654
limit=20
在浏览器中打开URL,并通过待定系数方法删除参数,以查看所需内容
从这个可以猜到
Limit=20应该是可以删除的请求数据数
Client=PC字面意思是PC端
通道=区块链通道,可引用区块链相关数据,不能删除
Cursor=1518567654最初怀疑它位于加载上一页时的页面或附加信息中,但在搜索后未找到。怀疑它可能是一个时间戳。时间模块验证它是否确实是当前时间。它可以被删除,但实验后,发现没有光标,最多可以加载99个数据
这仅适用于区块链的一部分。其他类似于搜索,但在搜索过程中会找到一个API和所有数据。接口:
当浏览器打开时,最好安装一个JSON相关插件以方便查看数据。如图所示
通过阅读,你可以了解全球、区块链、a股。股票、美股、外汇和商品分别分为六个板块:宏观、区块链、a股、美股、外汇和商品
就这样
随附信息的接口API:
看,这就是代码。不要直接粘贴它
'https://api-prod.wallstreetcn.com/apiv1/content/articles?category={}&limit=20&platform=wscn-platform'.format(p) for p in
['global','shares','commodities','china','us','europe','japan','charts','economy']
极限参数可以手动控制。还有游标参数。您可以发现,他返回的数据收录display_uuTime、next_uuu光标,可以结合limit访问下一个时间段的数据。您还可以指定当前时间戳和特定时间戳之间的时间