使用Python腳本實(shí)現(xiàn)批量網(wǎng)站存活檢測(cè)遇到問題及解決方法
做滲透測(cè)試的時(shí)候,有個(gè)比較大的項(xiàng)目,里面有幾百個(gè)網(wǎng)站,這樣你必須首先確定哪些網(wǎng)站是正常,哪些網(wǎng)站是不正常的。所以自己就編了一個(gè)小腳本,為以后方便使用。
具體實(shí)現(xiàn)的代碼如下:
#!/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 '網(wǎng)址%s' % url_result_success[i].strip()+'打開成功'
測(cè)試結(jié)果如下:
遇到的問題:
剛開始測(cè)試的時(shí)候,遇到只要是不能錯(cuò)誤,或者不存在的,直接報(bào)錯(cuò)停止程序。后來發(fā)現(xiàn)是因?yàn)閞esponse.status_code != 200這里取狀態(tài)碼的時(shí)候錯(cuò)誤。
因?yàn)橛械木W(wǎng)站不能打開的話,不會(huì)返回狀態(tài)碼。所以程序就不知道!==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腳本實(shí)現(xiàn)批量網(wǎng)站存活檢測(cè)遇到問題及解決方法,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
python?apscheduler?cron定時(shí)任務(wù)觸發(fā)接口自動(dòng)化巡檢過程
這篇文章主要介紹了python?apscheduler?cron定時(shí)任務(wù)觸發(fā)接口自動(dòng)化巡檢過程,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03python裝飾器類方法classmethod的使用場(chǎng)景
這篇文章主要為大家介紹了python裝飾器類方法classmethod的使用場(chǎng)景,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06Python真題案例之小學(xué)算術(shù)?階乘精確值?孿生素?cái)?shù)?6174問題詳解
這篇文章主要介紹了python實(shí)操案例練習(xí),本文給大家分享的案例中主要任務(wù)有小學(xué)生算術(shù)、階乘的精確值、孿生素?cái)?shù)、6174問題,需要的小伙伴可以參考一下2022-03-03Python基于Twilio及騰訊云實(shí)現(xiàn)國(guó)際國(guó)內(nèi)短信接口
這篇文章主要介紹了Python基于Twilio及騰訊云實(shí)現(xiàn)國(guó)際國(guó)內(nèi)短信接口,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06python實(shí)現(xiàn)在圖片上畫特定大小角度矩形框
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)在圖片上畫特定大小角度矩形框,以及C++的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-10-10Python lxml庫(kù)的簡(jiǎn)單介紹及基本使用講解
lxml是XML和HTML的解析器,其主要功能是解析和提取XML和HTML中的數(shù)據(jù),本文重點(diǎn)給大家介紹Python lxml庫(kù)的簡(jiǎn)單介紹及基本使用講解,感興趣的朋友跟隨小編一起看看吧2020-12-12