文章采集器,需要一个用dir()方法

优采云 发布时间: 2021-07-17 06:02

  文章采集器,需要一个用dir()方法

  文章采集器,需要一个web应用。一般采集器都可以检测到文章的标题、图片资源,对上传的json或者数据库中的数据进行全文爬取。如果网站还会做一个分页的爬取,那爬取页数可能会更多,更复杂。爬取某一章节的话,已经是一个简单的文章处理了。但是有一个话题比较敏感,爬取整篇文章,爬取网站返回的txt。如果这个网站有多个版本,爬取过程相对比较复杂。

  需要做一些处理。比如post来一个txt,返回页数就要做一些去重和处理。第一步,数据备份。需要备份不同版本的源文件。一般是要把不同版本的文件保存起来,保存时按数据源文件名称进行命名。防止重名。然后,先找到源文件的路径。根据网站的版本分部,把源文件地址列表列表。用dump.datadir()、listdir()等方法。

  就能看到网站分布,比如这里是[{'page':2,'file':'test.txt'},{'page':1,'file':'test.txt'},{'page':2,'file':'test.txt'}]这三个用dir()方法,可以看到是一样的,分布如下图。完成数据备份后,用jsoup把源文件解析一下。

  之前就提过,爬取txt的时候,可以只爬取几个页面,然后按不同的txt进行标题、图片等这类识别,而不是爬全部网页。dir()方法,就可以,把不同页面的txt列表都一起查看了。这个和爬取全部网页,一起进行识别是两回事。爬取页面之后,就要用requests库,去库里面取下这些源码,如果解析出来,不能用的话,可以根据函数、文件名等来判断是否不能用。

  到这一步,爬取就算完成了。之后再处理一下,让下一页就不用爬了。可以交给后端或者自己再处理。具体的全文爬取,我会单独写文章来说。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线