利用Python,通过关键字获取漏洞平台最新漏洞信息

为了及时发现和修复架构及应用服务的潜在漏洞,本文介绍了一个使用Python编写的爬虫程序,该程序能够从漏洞数据库中搜索关键信息并生成日志文件。虽然美国国家信息安全漏洞库有时会出现超时问题,但通过重试机制,仍能从三个不同平台获取到相似的漏洞数据。
摘要由CSDN通过智能技术生成

因要每天去查找漏洞信息,来判断架构和应用服务有没有新漏洞被发现,若有 则需修复升级。所以写了一个去漏洞库平台通过关键字爬取数据生成日志文件,这三个平台,就美国国家信息安全漏洞库地址会时不时出现超时情况。若出现超时,可多试两次,三个平台检索出的漏洞差不多,写的不好,仅供参考

python版本3.7
pip安装requests即可

#coding=utf-8
import requests as r
import re
import time
import datetime

#爬取国家信息安全漏洞平台
class gjxxaqpt:
    def get_404(self,url,keyword):
        #定义提交数据 qcvCname 检索的词,pageno 页数 一般是抓取第一页
        data = {"qcvCname":keyword,"pageno":1}
        #post数据
        result = r.post(url,data=data).text
        #正则匹配信息
        filter_result = re.findall('<li  style=".*?class="a_title2" >\r\n                               \t\t  (.*?)</a>.*?<p><a href="(.*?)" target="_blank">(.*?)</a>.*?<img title="(.*?)" src=".*?<br/ >(.*?)\r\n\t\t\t\t\t\t   </div>.*?</li>',result,re.S)
        return filter_result

    def get_404_mes(self,url):
        header = {'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36'}
        try:
            result = r.get(url,headers=header).text
            filter_result = re.findall('<div class="d_ldjj">.*?</p><p style="text-indent:2em">\n(.*?)\r\n\t\t\t</p>',result,re.S)
            if filter_result is not None:
                return filter_result[0]
            else:
                return ""
        except:
            print("连接超时"+url)

    def write_file(self,keyword,date_time):
        #定义post的url
        url = "http://www.cnnvd.org.cn/web/vulnerability/queryLds.tag"
        #定义后面组合信息需要的域名
        url_domain = "http://www.cnnvd.org.cn"
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值