百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

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

off999 2025-05-11 00:13 26 浏览 0 评论

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

import socket


def download_webpage(url, output_file):
    try:
        # 解析 URL
        if url.startswith("http://"):
            url = url[7:]
        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)

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

        # 构建 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 = "http://www.5a8.com"  # 替换为你要下载的网页 URL
    output_file = "www5a8com.txt"
    download_webpage(url, output_file)

运行结果

D:\code\python\get>python getsocket.py
网页内容已成功保存到 www5a8com.txt

相关推荐

win10系统升级win11(win10系统升级win11后无声音输出设备)

如果你是正版的操作系统的话,可以到微软的官方网站直接下载一个windows11的安装包,直接按下up的文件,它就会根据提示一步一步的安装,然后它就会直接升级到windows11了。如果你不是正版的操作...

thinkpad按f8进不了安全模式

可以通过系统预设进入安全模式,步骤如下:1、打开开始菜单栏,点击设置2、点击更新与恢复3、点击恢复-选择高级启动下的立即重启系统重启后就会提示选择启动的模式,这时选择安全模式即可。Bugch...

window7旗舰版电脑密码忘记了怎么解开

如果忘记win7旗舰版电脑密码,可以尝试以下方法破解:1.使用系统管理员账户登录。2.在开始菜单中,找到“控制面板”并打开。3.在“用户账户和家庭安全”中找到“更改Windows密码”并打开。4...

163邮箱电脑版(163电子邮箱)

163邮箱在电脑端的登入网址是mail.163.com。163邮箱作为国内排名靠前的邮箱,为大家提供邮箱服务,除了免费个人邮箱个人vip邮箱外,还提供企业邮箱的服务。163邮箱可以在outlookf...

win7 重置(win7重置系统)
  • win7 重置(win7重置系统)
  • win7 重置(win7重置系统)
  • win7 重置(win7重置系统)
  • win7 重置(win7重置系统)
国内外十大免费crm软件推荐(免费版crm)

悟空CRM9.0完全开源免费,采用前后端分离模式,前端框架vue后端框架PHP/JAVA多框架语言。ZohoCRM有免费版,限3用户免费,它还配有免费的手机app,很方便。你可以到这个地址查看一...

电脑显示屏(电脑显示屏图片)

1、LCD显示器LCD显示器即液晶显示屏,优点是机身薄,占地小,辐射小,给人以一种健康产品的形象。我看不尽是,使用液晶显示屏不一定可以保护到眼睛,这需要看各人使用计算机的习惯。2、等离子显示器等离子显...

把文件删了怎么恢复(文件删除之后如何恢复)

首先我们需要通过浏览器搜索互盾数据恢复软件,将这款软件下载到我们的电脑上1、下载好后运行互盾数据恢复软件,软件界面有六大功能,因为我们需要对回收站清空的数据进行恢复,所以点击界面的“误清空回收站”即...

360路由器怎么设置密码(360路由器怎么设置密码192.168.0.1)

360路由器p1的具体步骤:1、首先按照说明书进行常规连接路由器,然后我们打开浏览器,地址栏输入luyou.360.cn或192.168.0.1回车。2、立即开启,就会看见下一个设置界面,路由器管理员...

电脑特别卡反应特别慢怎么办

网速能快多少?很多朋友发现家里的网速明明是百兆光纤,但网速总是提不上来,其实影响这的原因很多,但有一点或许是很多人都不知道的,那就是因为我们的系统为了适应不同配置的电脑,需要保留一定的宽带来减轻网络给...

cpu使用率过高(cpu使用率过高怎么解决 换配置)

关闭不必要的程序和服务:找出并关闭后台运行的、不必要的程序,注意可能的开机自启动程序影响。结束后台进程:通过任务管理器或系统监视器来结束不必要的后台进程,特别注意那些占用大量CPU资源的进程。检查...

智能abc输入法电脑版(智能abc输入法免费下载)

要安装智能ABC输入法,首先需要在笔记本上打开浏览器,然后在搜索栏中输入“智能ABC输入法下载”,找到官方网站或者可信赖的第三方网站,点击下载并安装该输入法软件。安装完成后,在输入法设置中选择启用智能...

如何给电脑设置密码开机密码

1、点击左下角开始,选择控制面板!(有的可以右击我的电脑)2、然后在选择用户账户3、一般没有设置密码的需要设置administrative的管理员密码!也可以创建新的账户4、然后在选择创建密码5、然后...

系统盘制作u盘要多大(制作系统u盘要多少g)

u盘制作启动盘,8g空间足够了。随着WINDOWS系统的不断完善,操作系统本身文件也越来越大,因为操作系统集成了更多的设备驱动和补丁,但是就WINDOWS10系统来说,有8g的空间足够把U盘做成启动...

网吧电脑怎么关闭防火墙(网吧如何关掉防火墙)

1、首先,我们点击电脑桌面左下角的微软按钮,弹出的界面,我们找到windows系统,点击打开它,弹出的界面,我们点击控制面板;2、弹出的界面,我们点击WindowsDefender防火墙;3、之后我...

取消回复欢迎 发表评论: