程序公告
准备近期用java或者go语言重写superl-url软件!降低环境因素影响和上手使用难度!同时准备增加API接口,方便通过HTTP接口进行调用搜索采集服务,可远程通过软件或WEB来添加采集任务!
程序简介
4.0版本已经升级完成。后续的更新可能只是添加更多的搜索引擎支持了。result目录下面,自带了一个测试搜索python的结果txt.
根据关键词,对搜索引擎内容检索结果的网址内容进行采集的一款轻量级软程序。
程序主要运用于安全渗透测试项目,以及批量评估各类CMS系统0DAY的影响程度,同时也是批量采集自己获取感兴趣的网站的一个小程序~~
可自动从搜索引擎采集相关网站的真实地址与标题等信息,可保存为文件,自动去除重复URL。同时,也可以自定义忽略多条域名。
程序特色
支持同时采集多个搜索引擎(已内置了百度,搜狗,360),结构模块化,很方便进行扩展,可以无限添加。
获取到的是搜索引擎的搜索结果的真实URL地址
跨平台,采用Python开发,所有代码完整开源.并且无捆绑后门风险,更新方便。网上大部分URL采集软件为WINDOWS下的可执行文件,并且很多都在搜索引擎更新后无法正常使用。
强大的过滤功能。可过滤多种顶级域名,可过滤指定标题中包含某关键子的URL,比如搜索结果中过滤属于youku.com的子域名URL。支持TXT配置过滤。
可自动去除重复URL
可灵活的通过配置文件自定义要保存的结果格式。比如只输出带参数的原始真实URL,或者只输出域名,或者同时输出标题,搜索引擎名称。
可灵活的开启与关闭参与采集的搜索引擎,比如只想使用百度,就把其他搜索引擎参数设置为False即可。
同时兼容python3和python2版本运行!良心开源小产品啊~~~
可分别自定义不同搜索引擎每页显示数量(如果搜索引擎自身支持的话)
支持多进程同时采集,每个搜索引擎一个进程
可自定义每页采集时间间隔,防止被屏蔽
实时显示采集到的网页的【真实URL】以及【标题】。前面的【ID】对应的是当前页搜索引擎结果的第X条数据
保存类型可自定义,目前支持保存为本地txt,以及写入远程MYSQL数据库!
当前版本
Version 4.0
使用效果
测试环境1:系统为Mac Pro 10.12 python版本为2.7和python3【测试通过】
测试环境2:系统为win7 64位。python版本为2.7 【测试通过】
如果发现运行有问题,一般都是操作系统的编码导致的小问题,欢迎截图反馈
安装依赖
如果是python3,则: pip install ConfigParser
pip install tldextract
如果是Python2,则: pip install tldextract
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple configparser
如果提示模块不存在,则根据提示进行安装!
一般没有安装tld模块,使用 pip install tld 进行安装。或者官网下载(https://pypi.python.org/pypi/tld/0.7.6)
如果使用遇到问题,可以在博客页面评论留言。
联系方式
使用说明
如果要采集关键词为“hacker”的相关网站,采集搜索结果的前3页,则输入如下:
please input keyword:hacker
Search Number of pages:3
配置文件说明 config.cfg
节点
参数
示例值
说明
global
save_type
mysql
保存类型 可选择file或者mysql 如果是file则保存为本地txt
global
sleep_time
1
每次搜索处理完一页后的等待时间,防止太频繁被搜索引擎屏蔽
url
url_type
realurl
保存文件txt里面显示的url类型。realurl=真实网站地址 baseurl=原始搜索引擎地址 urlparam=带参数的真实网站地址
filter
filter_status
True
是否开启过滤器,如果开启,则过滤域名和标题都不生效
filter
filter_domain
True
是否过滤域名
filter
filter_title
True
是否过滤标题
log
write_title
True
是否显示标题
log
write_name
True
是否显示搜索引擎名称
engine
baidu
True
百度搜索引擎模块是否开启
engine
sougou
True
搜狗模块是否开启
engine
so
False
搜搜模块是否开启 (搜搜现在抓取不到了)
pagesize
baidu_pagesize
50
每页条数
pagesize
sougou_pagesize
50
每页条数
pagesize
so_pagesize
10
每页条数
mysql
host
127.0.0.1
如果保存类型为Mysql,则此节点必须配置正确
mysql
port
3306
端口
mysql
user
root
用户名
mysql
password
root
密码
mysql
database
superldb
数据库名称
mysql
table
search_data
表名称
file
save_pathdir
result
如果保存类型为file,则这里设置的是保存的路径,当前为程序根目录的result文件夹
plugin
pr
True
预留的插件功能,暂时不支持
数据库创建表sql语句
CREATE TABLE `search_data` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`engine` varchar(20) NOT NULL DEFAULT '',
`keyword` varchar(100) NOT NULL DEFAULT '',
`baseurl` varchar(255) NOT NULL DEFAULT '',
`realurl` varchar(255) NOT NULL DEFAULT '',
`urlparam` varchar(255) NOT NULL DEFAULT '',
`webtitle` varchar(255) NOT NULL DEFAULT '',
`create_time` int(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=395 DEFAULT CHARSET=utf8;
关于反馈
如果搜索引擎规则改变,导致采集不到内容,可以我的博客发布页留言联系我进行修改,或者直接在git上issues也可以。
定制优化
有基础的自己修改吧,随便改,但请保留版权信息。暂时没有时间更新和,也不接定制,有使用问题可以群里问,闲了会回答。
4.0版本更新说明
系统核心优化,去除和重新封装部分核心类;
配置文件优化(更改部分参数的命名以及新增了参数);
更新搜索引擎类(比如,module/baidu/baidu.py)的实现写法更加方便与简洁;
python2和python3的兼容性优化(目前在本机MAC系统上分别使用py2和py3都可以正常运行,windows没有环境去测试,如有问题欢迎反馈)
同时支持保存为本地txt和写入远程Mysql数据库;
修复相关异常报错问题;
3.0版本更新说明
系统重构,工程目录结构更清晰
同时兼容Python2和python3
搜索引擎模块化集成
代码质量与运行效率优化
支持不同搜索引擎多进程同时采集
去重复功能优化
过滤功能优化,要过滤的域名添加到txt配置文件即可,同时支持过滤标题关键词
tld包换成了tldextract(截取url的顶级域名用的)
修复360搜索(so)的采集BUG
中文采集BUG修复,保存的文件名也同样为中文,方便识别。
2.0版本更新说明
2.0版,内置的搜索引擎增加。包括百度,搜狗,360搜索(新增加支持的搜索引擎比较容易);
1.0版本更新说明
1.0版,初始版本,满足个人基本需要;