L1nf3ng / BlogSpider

A spider crawles for new security blogs

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BlogSpider

重要:本项目近期搬家(新名字SecurityDaily,搬家原因:更好的代码风格,更清晰的设计目标,更强大的功能。)

爬虫源码:https://github.com/L1nf3ng/BlogSpider/tree/master/SecDaily

目的:写一个类似于scrapy的爬虫框架,目标主要针对博客类文章。

结构

项目由两个爬虫组成:

一、针对安全客作者信息的爬虫,搜集最近发表文章的作者的文章来源,从中提取有用的大站博客目录、个人博客域名

二、针对上一步爬到的有用信息,在VPS上部署一个通用型爬虫,定期爬取新鲜博客,并以邮件方式发送提醒

进度

第一个爬虫已经完成

第二个爬虫的设想是对不同的站点做不同的规则库,每日爬取时都从对应的库中读取规则并解析,此时需要一个数据库来缓存上一段时间的数据(比较得出新写的文章); 目前暂停这一步工作,在SecDaily这个目录下我试水了以xpath表达式作为爬取规则,并对爬取+分析过程做了一定的容错,感觉效果不错,后期可以考虑引入这种方式。

判断规则如下:

  1. 第一次运行时先爬取一遍当前最新文章作为初始数据,如果有近两日文章出现则做一次提醒
  2. 第二次运行时爬取文章后和旧数据比较,日期有更新则做一次提醒

其他用途

这个repo只用来放爬虫可惜了。决定在这里放一些自写的、扒别人的小脚本,以及一个POCs文件夹专门用来记录自己验证过的漏洞细节。

Reading Lists

pyppeteer官方API文档

别人的试水帖

Chrome DevTools Protocol

关于库本身

这篇文章对Chrome浏览器、Pyppeteer库的特性做了总结,替人踩了不少坑

有用的经验

Addtional Readings

About

A spider crawles for new security blogs


Languages

Language:Python 98.0%Language:HTML 2.0%