pyqt5+python子域名扫描程序

pyqt5+python子域名扫描程序_第1张图片

import sys

from PyQt5 import uic
from PyQt5.QtWidgets import *
#requests库内置了不同的方法来发送不同类型的http请求
import requests
 #BS主要功能是从网页抓取数据,提供一些简单的、python 式的函数用来处理导航、搜索、修改分析树等功能
from bs4 import BeautifulSoup
#模块主要用于解析url中的参数,对url按照一定格式进行 拆分或拼接,将url分为6个部分,返回一个包含6个字符串项目的元组:协议、位置、路径、参数、查询、片段
from urllib.parse import urlparse




class MyWindow_2(QWidget):
    def __init__(self):
        super().__init__()
        self.init_ui()
    def init_ui(self):
        self.ui=uic.loadUi("./ziyuming.ui")
        self.wang=self.ui.lineEdit
        self.textBrowser=self.ui.textBrowser
        start=self.ui.pushButton
        start.clicked.connect(self.begin)

    def begin(self):
        domain = self.wang.text()
        print(self.wang.text())
        file = open('subdomain.txt', 'r')

        content = file.read()
        subdomains = content.splitlines()

        for subdomain in subdomains:
            url = f'http://{subdomain}.{domain}'
            try:
                requests.get(url)
            except requests.ConnectionError:
                pass
            else:
                print("发现子域名:", url)
                ss="发现子域名:"+ url
                self.textBrowser.append(ss)
                self.textBrowser.repaint()



if __name__=='__main__':
    app=QApplication(sys.argv)
    w=MyWindow_2()

    w.ui.show()

    app.exec()

其中.txt文件,主要运用python爬虫进行探测,另外用headers bing.com的方式在2023年6月开始不能用了,我也不知道为什么

www
mail
ftp
localhost
webmail
smtp
pop
ns1
webdisk
ns2
cpanel
whm
autodiscover
autoconfig
m
imap
test
ns
blog
pop3
dev
www2
admin
forum
news
ns3
mail2
new
mysql
old
lists
support
mobile
mx
static
docs
beta
shop
sql
secure
demo
cp
calendar
wiki
web
media
email
images
img
www1
intranet

你可能感兴趣的:(qt,python,开发语言)