文章目录
1.速成爬虫理论
1.1. 学习链接
- 爬虫速成(一)前言:https://blog.csdn.net/m0_46521785/article/details/109240831
- 爬虫速成(二)数据获取:https://blog.csdn.net/m0_46521785/article/details/109240854
- 爬虫速成(三)数据清洗:https://blog.csdn.net/m0_46521785/article/details/109272457
- 爬虫速成(四)数据存储:https://blog.csdn.net/m0_46521785/article/details/109272779
1.2. 抓包与爬虫
- 爬虫进阶:电脑软件&手机APP常用的爬虫抓包工具:https://blog.csdn.net/m0_46521785/article/details/113486938
1.3. 网站可爬许可
- 哪些网站可以爬?康康robots协议:https://blog.csdn.net/m0_46521785/article/details/109907719
1.4. 反爬机制
- 信息没在第一个请求中 我们打开priview,使用Ctrl + F进行搜索,看看里面有没有你的资源,如果没有可能是在别的地方。 点一下我们的请求(将鼠标交点从Priview中移出),再按一下Ctrl + F,将我们想要的信息放进去
- 信息哪都没找到 直接上driver
- 开始状态200,后来404 可能是资源地址发生改变,或者是你的频率太快啦,ip被封啦。 使用sleep或者使用代理或者休息会再爬
- 验证码 看看能不能找到json数据,不能的话就直接上webdriver。 打开请求界面后,先sleep几秒钟,给你时间扫码或者输验证码、账号密码等。
2.爬威胁情报小模仿练习
2.0. csdn博主原文
2.1.搜索资源地址并爬取(request)
发现这是一个像json格式的文本文件(双引号)。我们直接爬取的未解析的原始文件内容就是这样。
----备注:什么是json格式? Json格式单引号,分隔符为英文逗号
2.2.解析爬取数据并存储(json,csv)
- 将原始文本数据文件解析成json格式文件;
- 分析json格式;
- 解析提取键值数据;
- 并存储为CSV数据;
- 实现网站搜索内容全抓取并循环一到四(实现翻页从、抓取功能)
----备注:这个爬取的知识搜索内容的简介内容和、而非每个威胁情报的详细描述。*
2.3.爬取全文详细描述的准备工作(xpath)
上面的爬抓数据只是对搜索界面的内容简介进行爬取;在做威胁情报分析时,可能需要获取全文来进行系统的分析,比如APT组织名称、采用攻击方法、CVE漏洞、Hash值、所属地区等等,这又涉及到自然语言处理中实体识别、属性抽取、事件抽取等内容,这里不进行详解介绍。
----*备注:全文分析需要借助一些解析工具,
如xpath插件,正则表达式,BeautifulSoup或Selenium扩展包等等
安装谷歌浏览器XPath Helper插件进行全文节点获取和内容抽取
Xpath安装参考博客https://blog.csdn.net/heartbeat196/article/details/113790232
Xpath操作参考:https://blog.csdn.net/ayouleyang/article/details/105412096
-
获取Xpath值
网页选目标内容>右击>检查>copy>copy Xpath
-
一个xpath值
//*[@id=“artical-detail-page”]/div[3]/div[2]/div[1]/div[1]/div[1]/span -
Xpath值查询打开:
Ctrl+Shift+x
网页上方左边黏贴输入xpath值,右边获得对应的值
-
Xpath获取节点抽取内容常用:
Xpath的值是一些标签,我们需要的内容(如文本,链接等)在标签内;
直接复制的xpath值是标签,需要在xpath值后加一些东西,才能获得对应标签值。
获取文本:在复制到的xpath后面加上**/text()** 获取链接:
在复制到的xpath后面加上**/@href** 获取其它标签:
2.4.爬取全文详细描述(xpath,Selenium)
流程步骤如下:
- 首先,从前面爬取标题CSV文件中依次读取URL;
- 其次,分别爬取每个URL对应的正文内容并存储至详情CSV文件;
- 再次,对部分数据进行处理,比如某些文章没有标签内容,此时需要判断该节点是否存在再抓取数据;
- 最后,循环获取所有正文内容。
----备注:Request技术爬取数据有时候爬不了,很可能是因为反爬机制。
解决方法一:采用模拟浏览器技术爬取,及webdriver
第一:安装第三方库Selenium: pip install Selenium
第二:安装配置谷歌浏览器驱动器环境参考:”解决:‘chromedriver’ executable needs to be in PATH问题”https://blog.csdn.net/weixin_42555080/article/details/102808385
3.侵删
最近才开始写博客,写的页面可太丑了,帮助自己学习,侵删