爬取某网站所有的乌云漏洞公共文章,并保存为pdf文件

news/2024/5/10 9:31:09/文章来源:https://blog.csdn.net/weixin_30243533/article/details/98515083

鼎鼎大名的乌云网站,仅存在6年左右,就停摆,真是可惜。。。

从某网站爬取所有公开的乌云漏洞文章,保存为pdf格式,以作纪念学习使用

首先创建一个文件夹wooyun,把下面代码保存为test.py,然后放在该文件夹

# -*- coding: utf-8 -*-
import urllib2
import pdfkit
from lxml import etree
import time
import random
import os
import shutildef modify_filename(file1,file2,filename,m):'''更改文件名函数如有多个同名文件,自动在文件名末尾加上数字,从2开始。方法递归'''if os.path.exists(file2):m += 1file2 = filename + str(m) + '.pdf'modify_filename(file1,file2,filename,m)else:os.rename(file1,file2)returndef main():'主函数:爬取所有乌云文章,以漏洞标题作为文件名'# 外循环控制页数for i in range(1,167):# 创建一个文件夹来存放该页所有文章,文件夹名字为分页数字os.mkdir(str(i))url = "http://xsspt.com/index.php?do=blist&page=" + str(i)headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/67.0.3396.99 Safari/537.36','Cookie': '__cfduid=db29c8ab99daaf6824f89ff256974cc131532950162; bdshare_firstime=1532950162131; UM_distinctid=164eaf6ebae83c-0945623eb9d7ee-47e1039-1fa400-164eaf6ebaf67b; Hm_lvt_c12f88b5c1cd041a732dea597a5ec94c=1532950162,1532950477; CNZZDATA1260224584=5670'}req = urllib2.Request(url,headers=headers)res = urllib2.urlopen(req)# print(res.getcode())# print(res.url)html = res.read()content = etree.HTML(html)# 获取每页的文章链接列表links = content.xpath('//td/a/@href')n = 0# 遍历该分页里面的文章链接for each in links:each = 'http://xsspt.com' + eachreq2 = urllib2.Request(each,headers=headers)html2 = urllib2.urlopen(req2).read()content2 = etree.HTML(html2)# 获取文章章标题title = content2.xpath("//h3[@class='wybug_title']/text()")[0]# 设置保存的文件名,由于windows环境对文件名命名有'/'、'\'、'?'、'|'、'<'、'>'、'"'、'*'有限制,所以要有如下过滤filename = title[5:].strip().replace('/','_').replace('\\','_').replace('<','').replace('>','').replace('"','').replace('(','').replace(')','').replace('[','').replace(']','').replace('\\','').replace('%','').replace(';','').replace('*','').replace('?','').replace(':','').replace('|','')# file = filename + ".pdf"n += 1# 初始文件名file1 = str(n) + '.pdf'# 保存文件名file2 = filename + '.pdf'# 保存pdf文件到本地path_wk = r'C:\Program Files\wkhtmltopdf\bin\wkhtmltopdf.exe'config = pdfkit.configuration(wkhtmltopdf = path_wk)pdfkit.from_url(each, file1, configuration=config)# m变量值用来区分同名文件m = 1# 由于文件名有重复,所以使用递归函数来处理,文件重名的,文件名末尾加递增数字保存。如a.pdf,a2.pdfmodify_filename(file1,file2,filename,m)time.sleep(random.randint(1,3))# 把当前分页里面的所有的文章文件移动到对应的分页文件里面for d in os.listdir('.'):if d.split('.')[-1] == 'pdf':shutil.move(d,str(i))if __name__ == '__main__':main()

测试效果如下

1361873-20180731233256441-1884145517.png

1361873-20180731233308179-893642791.png

1361873-20180731233321410-1107436148.png

1361873-20180731233330110-1897823930.png

转载于:https://www.cnblogs.com/silence-cc/p/9398940.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_747929.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nginx基础篇(八);Nginx访问认证、网站展示目录结构浏览网页

Table of Contents 一、参数说明 二、实现访问认证步骤 三、Nginx访问认证出现状态码403 forbidden的原因 四、在网站展示目录结构 需求&#xff1a;在实际工作企业中有时需要我们为网站设置访问账号和密码权限&#xff0c;这样操作后&#xff0c;只有拥有账号密码的人才能…

wp 新窗口插件_适用于您的WP网站的10个令人兴奋的新jQuery插件

wp 新窗口插件今天&#xff0c;我们将向您分享我们的jQuery驱动插件集合&#xff0c;这些集合为您喜欢的WordPress网站增加了凉爽和交互式效果。 请享用&#xff01; 另请参阅&#xff1a; 100个WordPress jQuery插件 1.破坏性谈话 它是一个phono小部件&#xff0c;可让Word…

Nginx架构篇(三);LNMP架构实现discuz和wordpress搭建:MySQL多实例、主主及主从复制、读写分离及nfs网站代码集中式管理(后续可以为数据库添加MHA,DRBD)

文章目录一、环境搭建及主从复制基础知识二、NFS服务器的配置三、Nginx服务器的配置四、PHP服务器需要做的配置&#xff08;两个PHP都是一样的配置&#xff09;五、MySQL多实例&#xff1a;主主、主从复制&#xff0c;读写分离先给3307数据库和3308数据库做主主复制再给3307数据…

LNMP+zabbix监控平台部署(采用阿里云服务器一体化部署监控wordpress网站)

部署前须知&#xff1a; 一般情况下&#xff0c;我们是将其中Zabbix-Server、Zabbix-Proxy、Zabbix-Web、Zabbix-Database专门部署在一台独立服务器上,Zabbix-Agent一般部署在需要被监控的网站的服务器上。 由于资金限制&#xff0c;本人只有一台阿里云服务器&#xff0c;所以…

jQuery网站/博客-全球最佳

这是Internet上最好的jQuery网站和博客的集合&#xff08;或者至少是到目前为止我发现的博客&#xff09;。如果您想出现在此列表中&#xff0c;请发表评论并证明自己的理由。 相关文章&#xff1a; 进入互联网的十大jQuery Gurus blog.jquery.com 写更少&#xff0c;做更多&am…

2019升级版最新Python学习路线:关于电影购票网站实现的讲解

这次的Python学习路线跟大家讲一下关于电影购票网站的实现。这几天咱们国产的哪吒很火嘛&#xff01; 1. 用户功能 同前面所有项目的用户功能&#xff0c;利用AjaxDjango系统认证QQ邮箱实现登陆注册 2. 用户未登陆会跳转到注册登录界面&#xff0c;登录后会返回至主页&#…

jquerymobile_使用jQueryMobile从桌面到移动网站的转换

jquerymobilejQuery Mobile是用于制作移动Web应用程序的强大框架。 但是&#xff0c;我们可以使用它将现有的桌面网站转换为移动形式吗&#xff1f; 可以使用MobilizeToday.com在线服务。 它们提供了基于小部件的模型&#xff0c;该模型将任何现有HTML内容表示到移动视图中。 …

使用jQueryMobile从桌面到移动网站的转换

jQuery Mobile是用于制作移动Web应用程序的强大框架。 但是&#xff0c;我们可以使用它将现有的桌面网站转换为移动形式吗&#xff1f; 可以使用MobilizeToday.com在线服务。 它们提供了基于小部件的模型&#xff0c;该模型将任何现有HTML内容表示到移动视图中。 背后的技术是X…

eyoucms 网站原创文章要怎样进行优化?

互联网一直都是在变化中的&#xff0c;而且百度、搜狗等搜索引擎的抓取方式也在不断的进行改变&#xff0c;这些都导致了网站优化手法的改变&#xff0c;如果说唯一没有变化的话就是对于原创文章的编写以及发布。但是要写出一个高质量原创的文章可不是一件简单的事情&#xff0…

用Python清理收藏夹里已失效的网站,快测试一下你的收藏夹吧

最近打开好多以前收藏的网站&#xff0c;发现好多都已经失效了&#xff0c;好多以前想看还没来得及看的内容&#xff0c;也找不见了。。。 失效的书签们 我们日常浏览网站的时候&#xff0c;时不时会遇到些新奇的东西&#xff0c;于是我们就默默的点了个收藏或者加书签。然而…

SEO删除网站的旧内容,对目前已有的排名有影响吗?

搜索引擎是一个动态变化的过程&#xff0c;而相对于网站而言&#xff0c;对于过往的内容&#xff0c;它都是一沉不变的&#xff0c;这就是为什么网站需要持续的推陈出新&#xff0c;才能使得整站排名保持长期的稳定。 但这里有一个问题&#xff0c;垂直行业的内容资源库是有限…

大型网站系统架构分析

千万级的注册用户&#xff0c;千万级的帖子&#xff0c;nTB级的附件&#xff0c;还有巨大的日访问量&#xff0c;大型网站采用什么系统架构保证性能和稳定性&#xff1f; 首先讨论一下大型网站需要注意和考虑的问题。 数据库海量数据处理&#xff1a;负载量不大的情况下select、…

用Python爬取各大网站招聘平台,终于让我给知道对口的工作

个人经历&#xff1a;低不成&#xff0c;高不就 依稀还记得15年刚出来工作那会&#xff0c;在第一个互联网公司实习&#xff0c;在公司听惯了身边人说公司这不好&#xff0c;那不好&#xff0c;作为新人的我深受影响&#xff0c;不知从何时开始就想快点结束实习期换一份更好的…

用Python爬取各大网站招聘平台,终于让我给知道对口的工作

个人经历&#xff1a;低不成&#xff0c;高不就 依稀还记得15年刚出来工作那会&#xff0c;在第一个互联网公司实习&#xff0c;在公司听惯了身边人说公司这不好&#xff0c;那不好&#xff0c;作为新人的我深受影响&#xff0c;不知从何时开始就想快点结束实习期换一份更好的…

用Python清理收藏夹里已失效的网站

失效的书签们 我们日常浏览网站的时候&#xff0c;时不时会遇到些新奇的东西&#xff08; 你懂的.jpg &#xff09;&#xff0c;于是我们就默默的点了个收藏或者加书签。然而当我们面对成百上千的书签和收藏夹的时候&#xff0c;总会头疼不已…… 尤其是昨天还在更新的程序设计…

织梦怎么样备份网站

很多用织梦的朋友不知道怎么备份网站&#xff0c;还有些朋友备份网站的方式不对。当遇到网站被黑、服务器到期等关键时刻&#xff0c;导致数据丢失&#xff0c;网站不能用。新搭建网站就得一切从头再来&#xff0c;找技术恢复&#xff0c;又是一笔不小的开支。这是一种无形的损…

网市场云建站 v4.9 更新,增加网站子账户

开发四年只会写业务代码&#xff0c;分布式高并发都不会还做程序员&#xff1f; 网市场云建站系统&#xff0c;结合云技术&#xff0c;一台2核4G服务器可以建立超过4万个网站&#xff01;打破传统建站的高成本&#xff0c;让价格不再是阻碍的门槛&#xff0c;让每个人都能有自…

Python_爬虫_爬取好大夫网站_数据清洗部分

1.前言 通过对好大夫网站内容的爬取&#xff0c;我们已经收集到好大夫的相关数据&#xff0c;并将其存入excel表中。之所以先存入excel表中&#xff0c;是因为有很多是非结构化数据&#xff0c;需要进行数据清理后在进行保存&#xff0c;excel中有很多的功能能够帮助进行数据清…

使用Apache服务部署静态网站。

1、安装Apache服务程序&#xff0c;命令后面的Apache服务的软件包名称为httpd。2、httpd服务程序并将其加入到开机启动项中3、在浏览器&#xff08;这里以Firefox浏览器为例&#xff09;的地址栏中输入http://127.0.0.1并按回车键&#xff0c;就可以看到用于提供Web服务的httpd…

php特级课---1、网站大访问量如何解决

php特级课---1、网站大访问量如何解决 一、总结 一句话总结&#xff1a; 负载均衡和冗余技术 1、负载均衡和冗余技术是一回事么&#xff1f; 并不是&#xff1a;负载均衡是用户分流&#xff1b;冗余技术是避免出现单点故障 负载均衡&#xff1a;将不同的用户分流到不同的服务器…