banner
andrewji8

Being towards death

Heed not to the tree-rustling and leaf-lashing rain, Why not stroll along, whistle and sing under its rein. Lighter and better suited than horses are straw sandals and a bamboo staff, Who's afraid? A palm-leaf plaited cape provides enough to misty weather in life sustain. A thorny spring breeze sobers up the spirit, I feel a slight chill, The setting sun over the mountain offers greetings still. Looking back over the bleak passage survived, The return in time Shall not be affected by windswept rain or shine.
telegram
twitter
github

令人震惊的Python自动化脚本,你必须尝试(3)

5、AutoImage 下载器在计算机视觉项目中,收集图像数据是一个关键挑战。正如 Andrew
Ng 所说,如果你能收集到大量数据集,那么算法就不重要了。数据在提高模型性能和准确性方面起着关键作用。

# 导入所需的模块和函数
from simple_image_download import simple_image_download as simp

# 创建一个响应对象,用于处理图片下载
response = simp.simple_image_download

# 设置关键词
keyword = "Dog"  # 指定下载的图片关键词为“Dog”

# 下载图片
try:
    response().download(keyword, 20)  # 调用下载方法,尝试下载20张关键词为“Dog”的图片
    print("Images downloaded successfully.")  # 如果下载成功,则输出成功消息
except Exception as e:
    print("An error occurred:", e)  # 如果下载过程中出现异常,输出错误信息

image

6、端口扫描器 谈谈网络安全!
在计算机网络中,端口是允许不同进程或服务连接并通过网络交换数据的通信端点。端口通过数值标识,并与特定协议相关联。

# 导入socket库用于网络连接
import socket
# 导入PrettyTable库用于生成表格,使输出结果更易于阅读
from prettytable import PrettyTable

# 定义一个字典,其中包含常用端口及其潜在的安全漏洞描述
vulnerabilities = {
    80: "HTTP(超文本传输协议) - 用于非加密的网页流量",
    443: "HTTPS(安全的HTTP) - 用于加密的网页流量",
    22: "SSH(安全外壳协议) - 用于安全的远程访问",
    21: "FTP(文件传输协议) - 用于文件传输",
    25: "SMTP(简单邮件传输协议) - 用于电子邮件传输",
    23: "Telnet - 用于远程终端访问",
    53: "DNS(域名系统) - 用于域名解析",
    110: "POP3(邮局协议第3版) - 用于电子邮件获取",
    143: "IMAP(互联网消息访问协议) - 用于电子邮件获取",
    3306: "MySQL - 用于MySQL数据库访问",
    3389: "RDP(远程桌面协议) - 用于Windows的远程桌面连接",
    8080: "HTTP备用端口 - 常用作HTTP的次要端口",
    8000: "HTTP备用端口 - 常用作HTTP的次要端口",
    8443: "HTTPS备用端口 - 常用作HTTPS的次要端口",
    5900: "VNC(虚拟网络计算) - 用于远程桌面访问",
    # 根据需要可继续添加更多端口及其安全漏洞描述
}

# 定义一个函数,显示开放端口及其潜在的安全问题
def display_table(open_ports):
    table = PrettyTable(["开放端口", "潜在安全问题"])
    for port in open_ports:
        vulnerability = vulnerabilities.get(port, "此端口没有与常见服务相关联的已知漏洞")
        table.add_row([port, vulnerability])
    print(table)

# 定义一个函数,扫描目标主机的常用端口
def scan_top_ports(target):
    open_ports = []  # 存储开放端口的列表
    top_ports = [21, 22, 23, 25, 53, 80, 110, 143, 443, 3306, 3389, 5900, 8000, 8080, 8443]  # 定义常见的15个端口
    for port in top_ports:
        try:
            sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
            sock.settimeout(1)  # 设置连接超时时间
            result = sock.connect_ex((target, port))
            if result == 0:
                open_ports.append(port)
            sock.close()
        except KeyboardInterrupt:
            sys.exit()
        except socket.error:
            pass
    return open_ports

# 主函数
def main():
    target = input("请输入要扫描的网站URL或IP地址:")
    open_ports = scan_top_ports(target)
    if not open_ports:
        print("目标主机没有开放的端口。")
    else:
        print("开放的端口及其相关的潜在安全问题:")
        display_table(open_ports)

# 如果这个脚本被直接运行
if __name__ == "__main__":
    main()

image

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。