python 探测网站目录的GUI程序功能实例

python 探测网站目录的GUI程序功能实例,第1张

概述python 探测网站目录的GUI程序功能实例 对python这个高级语言感兴趣的小伙伴,下面一起跟随内存溢出 jb51.cc的小编两巴掌来看看吧!

1.pyqt4写的界面 find_ui.py

# @param python 探测网站目录的GUI程序# @author 内存溢出 jb51.cc|512Pic.com #-*- Coding: utf-8 -*-from PyQt4 import QtCore,QtGui try:    _fromUtf8 = QtCore.QString.fromUtf8except AttributeError:    def _fromUtf8(s):        return s try:    _enCoding = QtGui.QApplication.UnicodeUTF8    def _translate(context,text,disambig):        return QtGui.QApplication.translate(context,disambig,_enCoding)except AttributeError:    def _translate(context,disambig) class Ui_Form(object):    def setupUi(self,Form):        Form.setobjectname(_fromUtf8("Form"))        Form.resize(516,467)        self.label = QtGui.QLabel(Form)        self.label.setGeometry(QtCore.QRect(20,10,54,16))        self.label.setobjectname(_fromUtf8("label"))        self.edit_address = QtGui.QlineEdit(Form)        self.edit_address.setGeometry(QtCore.QRect(80,351,20))        self.edit_address.setobjectname(_fromUtf8("edit_address"))        self.button_search = QtGui.QPushbutton(Form)        self.button_search.setGeometry(QtCore.QRect(440,61,23))        self.button_search.setobjectname(_fromUtf8("button_search"))        self.text_all = QtGui.QTextEdit(Form)        self.text_all.setGeometry(QtCore.QRect(20,40,411,261))        self.text_all.setHorizontalScrollbarPolicy(QtCore.Qt.ScrollBaralwaysOff)        self.text_all.setobjectname(_fromUtf8("text_all"))        self.label_2 = QtGui.QLabel(Form)        self.label_2.setGeometry(QtCore.QRect(20,320,12))        self.label_2.setobjectname(_fromUtf8("label_2"))        self.text_exist = QtGui.QTextEdit(Form)        self.text_exist.setGeometry(QtCore.QRect(20,340,64))        self.text_exist.setHorizontalScrollbarPolicy(QtCore.Qt.ScrollBaralwaysOff)        self.text_exist.setobjectname(_fromUtf8("text_exist"))        self.label_3 = QtGui.QLabel(Form)        self.label_3.setGeometry(QtCore.QRect(380,310,91,20))        self.label_3.setText(_fromUtf8(""))        self.label_3.setobjectname(_fromUtf8("label_3"))        self.edit_add = QtGui.QlineEdit(Form)        self.edit_add.setGeometry(QtCore.QRect(20,420,20))        self.edit_add.setobjectname(_fromUtf8("edit_add"))        self.button_add = QtGui.QPushbutton(Form)        self.button_add.setGeometry(QtCore.QRect(440,71,23))        self.button_add.setobjectname(_fromUtf8("button_add"))        self.label_4 = QtGui.QLabel(Form)        self.label_4.setGeometry(QtCore.QRect(20,440,251,16))        self.label_4.setobjectname(_fromUtf8("label_4"))         self.retranslateUi(Form)        QtCore.QMetaObject.connectSlotsByname(Form)     def retranslateUi(self,Form):        Form.setwindowTitle(_translate("Form","目录探测工具",None))        self.label.setText(_translate("Form","网站地址:",None))        self.button_search.setText(_translate("Form","探测",None))        self.label_2.setText(_translate("Form","结果:",None))        self.button_add.setText(_translate("Form","添加地址",None))        self.label_4.setText(_translate("Form","例如:/admin/manager.asp  请以斜杠开始",None))# End www.jb51.cc

 

 

2. 启动文件 start.py

#!/usr/local/bin/python#Coding=utf-8 import sysimport osimport timeimport httplibimport refrom PyQt4 import QtCore,QtGuifrom threading import Thread from find_ui import Ui_Form  class MyForm(QtGui.QMainWindow):    def __init__(self,parent=None):        QtGui.QWidget.__init__(self,parent)        self.ui = Ui_Form()        self.ui.setupUi(self)        QtCore.QObject.connect(self.ui.button_search,QtCore.SIGNAL("clicked()"),self.startthread)        QtCore.QObject.connect(self.ui.button_add,self.addAddress)    def startSearch(self):        self.ui.label_3.setText("")         self.getAddress()        address=str(self.ui.edit_address.text())        self.accessAddesss(address)             def startthread(self):        t1=Thread(target=self.startSearch,)        t1.start()                      def getAddress(self):        try:            global addressList            addressList=[]            filePath=os.getcwd()+"\address.txt"           # if not os.path.isfile(filePath):            #    print 'aaa'                          #   return 0                            fileAddress=file(filePath,"r")            for address_line in fileAddress.readlines():                if address_line not in addressList:                    addressList.append(address_line)                    pass                pass            pass            fileAddress.close()                     except:            #self.ui.text_all.setText('aaa')            self.ui.text_all.setText(u'打开文件错误')            pass        finally:            #fileAddress.close()            pass       # print addressList[0]         def accessAddesss(self,host):        try:            print host            print len(addressList)            for oneAddress in addressList:                print len(addressList)                oneAddress=oneAddress.replace("\n","")                print oneAddress                connection=httplib.httpconnection(host,80,timeout=10)                connection.request("GET",oneAddress)                response=connection.getresponse()                result=response.reason                resultNum=response.status                                 if "OK" in result or "ForbIDden" in result:                    getaddress="http://"+host+oneAddress+"------"+str(resultNum)+":"+result                    self.ui.text_exist.append(getaddress)                else:                    self.ui.text_all.append("http://"+host+oneAddress+"------"+str(resultNum)+":"+result)                                     connection.close()        except Exception as e:            print e.message        self.ui.label_3.setText(u"探测完成")         self.ui.label_3.colorCount()            def  addAddress(self):        try:            filePath=os.getcwd()+"\address.txt"                  fileAddress=file(filePath,"a")            newAddress="\n"+str(self.ui.edit_add.text())            print newAddress            fileAddress.write(newAddress)            fileAddress.close()        except Exception as e:            print e.message          if __name__ == "__main__":    app = QtGui.QApplication(sys.argv)    myapp = MyForm()    myapp.show()    sys.exit(app.exec_())# End www.jb51.cc

 

 

3.address.txt 扫描地址名单文件,可以通过编辑改文件制定自己的规则,你懂的~~

/admin.PHP

/admin/

/administrator/

/moderator/

/webadmin/

/adminarea/

/bb-admin/

/adminLogin/

/test/login.Jsp

/source/login.PHP

总结

以上是内存溢出为你收集整理的python 探测网站目录的GUI程序功能实例全部内容,希望文章能够帮你解决python 探测网站目录的GUI程序功能实例所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1199951.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存