文章采集程序( 这部分就是如何解析html,从爬取到的html文件中解析出所需的数据)
优采云 发布时间: 2022-04-10 04:19文章采集程序(
这部分就是如何解析html,从爬取到的html文件中解析出所需的数据)
过年之后,我一直在业余时间独立开发一个小程序。主要数据为8000+视频和10000+文章文章,数据每天自动更新。
整个开发过程中遇到的问题和一些细节我会整理一下,因为内容会比较多,所以分三四个文章来进行,本文为系列第一篇文章@ >,内容偏python爬虫。
本系列文章将大致介绍内容:
数据采集
获取数据的方法有很多。这次我们选择了爬虫方式。当然,编写爬虫也可以用不同的语言,用不同的方式来完成。之前写过很多爬虫,这次选择了python的scrapy库。关于scrapy,百度百科解释如下:
Scrapy,一个用 Python 开发的快速、高级的屏幕抓取和网页抓取框架,用于抓取网站并从页面中提取结构化数据。Scrapy 用途广泛,可用于数据挖掘、监控和自动化测试。
学习scrapy最好的方法是先阅读文档(Scrapy1.6文档),然后根据文档中的示例进行编写,逐渐熟悉。有几个非常重要的概念必须理解:
项目的官方定义是“抓取的主要目标是从非结构化来源(通常是网页)中提取结构化数据。” 个人理解为数据结构,即要爬取数据的字段,最好对应数据库字段。, 便于存放。
“一个item被蜘蛛抓取后,会被发送到Item Pipeline,它通过几个组件依次执行来处理它。”,管道是我们的爬虫在获取数据后会执行的处理操作,例如写入文件,或者链接到数据库,保存到数据库等,都可以在这里进行操作。
“当你在抓取网页时,你需要执行的最常见的任务就是从 HTML 源中提取数据。”,这部分是如何解析 html 并从抓取的 html 文件中解析出需要的数据、BeautifulSoup 等方法、lxml、Xpath、CSS等都可以使用。
上面解释了几个重要的部分。
环境准备好(python3/scrapy等),我们就可以编写爬虫项目了。
爬取的内容来自这个网站。
创建项目
scrapy startproject jqhtml
修改项目
添加爬虫
写管道
修改配置文件
就这样,我们顺利完成了爬虫项目的编写。运行后发现,所有数据都存储在数据库中。
scrapy爬虫项目部署
对于scrapy爬虫项目的部署,我们可以使用官方的scrapyd,使用方法比较简单。在服务器上安装scrapyd并启动,然后在本地项目中配置deploy路径,在本地安装scrapy-client,使用命令deploy ie Deployable to server。
scrapyd提供了一些api接口来查看项目的爬虫状态,执行或者停止爬虫。
这样,我们就可以轻松调整这些接口来管理我们的爬虫任务。
当心:
如何将scrapyd部署到服务器上如何将scrapyd设置为系统后台服务和系统启动项NEXT
在下一篇文章中,我们将介绍和使用一个非常流行的nodejs后台api库——hapijs。完成小程序所需的所有接口的开发,使用定时任务执行爬虫脚本。