网站内容及实现方式(小脚本,为以后方便使用。。)

优采云 发布时间: 2021-12-22 18:08

  网站内容及实现方式(小脚本,为以后方便使用。。)

  在做渗透测试的时候,有一个比较大的项目,有几百个网站,所以首先要判断哪个网站是正常的,哪个网站是异常的。所以为了以后方便,我编写了一个小脚本。

  具体实现代码如下:

  

#!/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脚本实现批量网站生存检测的问题及解决方法,希望对大家有所帮助,有问题请给我留言,小编会及时回复大家。非常感谢大家对脸圈教程网站的支持!

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线