四时宝库

程序员的知识宝库

python原始套接字socket下载https网页文件到txt

python原始套接字socket下载https网页文件到txt

import socket
import ssl


def download_https_webpage(url, output_file):
    try:
        # 解析 URL
        if url.startswith("https://"):
            url = url[8:]
        host = url.split("/")[0]
        path = "/" + "/".join(url.split("/")[1:])

        # 创建 socket 对象
        client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

        # 获取主机的 IP 地址
        ip = socket.gethostbyname(host)

        # 使用 ssl 模块将 socket 包装为安全连接
        context = ssl.create_default_context()
        client_socket = context.wrap_socket(client_socket, server_hostname=host)

        # 连接到服务器
        client_socket.connect((ip, 443))

        # 构建 HTTP 请求
        request = f"GET {path} HTTP/1.1\r\nHost: {host}\r\nConnection: close\r\n\r\n"
        client_socket.sendall(request.encode())

        # 接收响应
        response = b""
        while True:
            data = client_socket.recv(4096)
            if not data:
                break
            response += data

        # 关闭 socket
        client_socket.close()

        # 分离 HTTP 头部和内容
        header, content = response.split(b"\r\n\r\n", 1)

        # 保存内容到文件
        with open(output_file, "wb") as file:
            file.write(content)

        print(f"网页内容已成功保存到 {output_file}")
    except Exception as e:
        print(f"发生错误: {e}")


if __name__ == "__main__":
    url = "https://www.5a8.com"  # 替换为你要下载的网页 URL
    output_file = "www5a8com.txt"
    download_https_webpage(url, output_file)
    

python安装与卸载(python3.5卸载)

一 python下载

1.1 什么是python解析器

python解释器是一款用于解释,执行python代码的应用程序

1.2. python解释器的下载

官网网站:https://www.python.org/

详解linux内核网络数据包发送在UDP协议层的处理与监控

udp_sendmsg

这个函数定义在net / ipv4 / udp.c,函数很长,分段来看。

UDP插入

1000W 短波及6米段SDR收发信机新品ANAN-G2-1K 内置Linux操作系统

ANAN-G2-1K 1000W HF & 6M SDR 收发器


600个常用 Linux 命令,收藏备用!

本文为Linux命令大全 ,从A到Z都有总结,建议大家收藏以便查用,或者查漏补缺!

A

Shell脚本编程:7个提高效率的自动化脚本

Shell脚本是Linux系统管理和自动化任务的强大工具。通过编写脚本,我们可以将重复性工作自动化,大幅提升效率。

本文将介绍7个实用Shell脚本,涵盖文件管理、系统监控、数据处理等常见场景,适合初学者学习参考。

01 自动备份重要文件

Linux纯干货知识总结|面试专用(linux面试题必会题目)

学习Linux的重要性相信不用我多说大家也明白,以下是小编总结的常用Linux基础知识以及面试常问的Linux命令,希望能帮助大家更规范地理解和使用~

绝对路径和相对路径

绝对路径

以正斜杠开始完整的文件的位置路径可用于任何想置顶一个文件名的时候

相对路径

不以斜线开始置顶相对于当前工作目录或某目录的位置可以作为一个简短的形式指定一个文件名

理解 Linux 终端、终端模拟器和伪终端

你可能听说过

Linux系统移植之—Nand flash驱动编写与移植,学Linux的先收藏

Linux系统要跑起来,除了上几章节讲到的uboot、kernel、文件系统的移植,还有一个不可缺少的——Nand flash驱动的移植,搞linux的或者android底层驱动的先收藏,以后工作中会遇到的。

说明:
本人近期会陆续上传IT编程相关的资料和视频教程,可以关注一下互相交流:C C++ Java python linux ARM 嵌入式 物联网等。
想学编程的朋友进入主页即可看到相关教程和资料。

谈谈Linux网络协议以及网络栈结构


网络协议——TCP/IP协议

简介:

TCP(传输控制协议)和 IP(网际协议)是两个独立且紧密结合的协议,负责管理和引导数据报文在 Internet上的传输。二者使用专门的报文头定义每个报文的内容。TCP 负责和远程主机的连接,IP负责寻址,使报文被送到其该去的地方。

<< < 13 14 15 16 17 18 19 20 21 22 > >>
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言
    友情链接