使用Python脚本实现批量网站存活检测遇到问题及解决方法


Posted in Python onOctober 11, 2016

做渗透测试的时候,有个比较大的项目,里面有几百个网站,这样你必须首先确定哪些网站是正常,哪些网站是不正常的。所以自己就编了一个小脚本,为以后方便使用。

具体实现的代码如下:

#!/usr/bin/python
# -*- coding: UTF-8 -*-
'''
@Author:joy_nick
@博客:http://byd.dropsec.xyz/
'''
import requests
import sys
f = open('url.txt', 'r')
url = f.readlines()
length = len(url)
url_result_success=[]
url_result_failed=[]
for i in range(0,length):
try:
response = requests.get(url[i].strip(), verify=False, allow_redirects=True, timeout=5)
if response.status_code != 200:
raise requests.RequestException(u"Status code error: {}".format(response.status_code))
except requests.RequestException as e:
url_result_failed.append(url[i])
continue
url_result_success.append(url[i])
f.close()
result_len = len(url_result_success)
for i in range(0,result_len):
print '网址%s' % url_result_success[i].strip()+'打开成功'

测试结果如下:

遇到的问题:

刚开始测试的时候,遇到只要是不能错误,或者不存在的,直接报错停止程序。后来发现是因为response.status_code != 200这里取状态码的时候错误。

因为有的网站不能打开的话,不会返回状态码。所以程序就不知道!==200怎么处理了。

解决方法:

使用try except else捕捉异常

具体代码为:

try:
response = requests.get(url[i].strip(), verify=False, allow_redirects=True, timeout=5)
if response.status_code != 200:
raise requests.RequestException(u"Status code error: {}".format(response.status_code))
except requests.RequestException as e:
url_result_failed.append(url[i])
continue

以上所述是小编给大家介绍的使用Python脚本实现批量网站存活检测遇到问题及解决方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python备份文件的脚本
Aug 11 Python
Python中使用OpenCV库来进行简单的气象学遥感影像计算
Feb 19 Python
Python中字符串的格式化方法小结
May 03 Python
深入解析Python的Tornado框架中内置的模板引擎
Jul 11 Python
python实现简单遗传算法
Mar 19 Python
python+opencv像素的加减和加权操作的实现
Jul 14 Python
Tensorflow Summary用法学习笔记
Jan 10 Python
python 回溯法模板详解
Feb 26 Python
python代码实现将列表中重复元素之间的内容全部滤除
May 22 Python
Python虚拟环境库virtualenvwrapper安装及使用
Jun 17 Python
Python xlrd/xlwt 创建excel文件及常用操作
Sep 24 Python
Django展示可视化图表的多种方式
Apr 08 Python
深入浅析ImageMagick命令执行漏洞
Oct 11 #Python
Zabbix实现微信报警功能
Oct 09 #Python
python 2.6.6升级到python 2.7.x版本的方法
Oct 09 #Python
Django1.7+python 2.78+pycharm配置mysql数据库
Oct 09 #Python
解决python2.7 查询mysql时出现中文乱码
Oct 09 #Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
Oct 09 #Python
python连接mysql实例分享
Oct 09 #Python
You might like
PHP获取MSN好友列表类的实现代码
2013/06/23 PHP
基于PHP创建Cookie数组的详解
2013/07/03 PHP
php session_start()出错原因分析及解决方法
2013/10/28 PHP
PHP使用SMTP邮件服务器发送邮件示例
2018/08/28 PHP
YII2框架中添加自定义模块的方法实例分析
2020/03/18 PHP
才发现的超链接js导致网页中GIF动画停止的解决方法
2007/11/02 Javascript
JS继承 笔记
2011/07/13 Javascript
jquery动画2.元素坐标动画效果(创建一个图片走廊)
2012/08/24 Javascript
javascript 函数声明与函数表达式的区别介绍
2013/10/05 Javascript
利用jquery操作Radio方法小结
2014/10/20 Javascript
JS+CSS实现自动改变切换方向图片幻灯切换效果的方法
2015/03/02 Javascript
用jQuery向div中添加Html文本内容的简单实现
2016/07/13 Javascript
jquery删除table当前行的实例代码
2016/10/07 Javascript
微信小程序  modal详解及实例代码
2016/11/09 Javascript
JavaScript 隐性类型转换步骤浅析
2018/03/15 Javascript
javaScript中"=="和"==="的区别详解
2018/03/16 Javascript
python模拟新浪微博登陆功能(新浪微博爬虫)
2013/12/24 Python
Python中为feedparser设置超时时间避免堵塞
2014/09/28 Python
简单掌握Python中glob模块查找文件路径的用法
2016/07/05 Python
Python编程实现二分法和牛顿迭代法求平方根代码
2017/12/04 Python
用Python去除图像的黑色或白色背景实例
2019/12/12 Python
python实现word文档批量转成自定义格式的excel文档的思路及实例代码
2020/02/21 Python
通过代码实例了解Python3编程技巧
2020/10/13 Python
新西兰第一的行李箱网站:luggage.co.nz
2019/07/22 全球购物
中国一家综合的外贸B2C电子商务网站:DealeXtreme(DX)
2020/03/10 全球购物
学前教育专业毕业生自荐信
2013/10/03 职场文书
中专毕业生求职简历的自我评价
2013/10/21 职场文书
满月酒主持词
2014/03/27 职场文书
交通事故赔偿协议书范本
2014/04/15 职场文书
跑操口号
2014/06/12 职场文书
农业局党的群众路线教育实践活动整改方案
2014/09/20 职场文书
房屋出租协议书范本(标准版)
2014/09/24 职场文书
2015元旦晚会主持词(开场白+结束语)
2014/12/14 职场文书
客户答谢会致辞
2015/07/30 职场文书
python 实现定时任务的四种方式
2021/04/01 Python
十大最强火系宝可梦,喷火龙上榜,第一名有双火属性
2022/03/18 日漫