用Python下载一个网页保存为本地的HTML文件实例

yipeiwu_com5年前Python基础

我们可以用Python来将一个网页保存为本地的HTML文件,这需要用到urllib库。

比如我们要下载山东大学新闻网的一个页面,该网页如下:

实现代码如下:

import urllib.request

def getHtml(url):
 html = urllib.request.urlopen(url).read()
 return html

def saveHtml(file_name, file_content):
 # 注意windows文件命名的禁用符,比如 /
 with open(file_name.replace('/', '_') + ".html", "wb") as f:
  # 写文件用bytes而不是str,所以要转码
  f.write(file_content)

aurl = "http://www.view.sdu.edu.cn/info/1003/75240.htm"
html = getHtml(aurl)
saveHtml("sduview", html)

print("下载成功")

打开相应的目录可以看到这个网页已经被下载保存成功了

我们用浏览器打开这个网页文件如下

由于我们只是下载了网页的主要源码,其中的很多图片之类的文件都不在这里。因此这种方法只适用于提取文字内容。

以上这篇用Python下载一个网页保存为本地的HTML文件实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python中for循环变量作用域及用法详解

在讲这个话题前,首先我们来看一道题: 代码1: def foo(): return [lambda x: x**i for i in range(1,5,2)] print([f...

python获取多线程及子线程的返回值

最近有个需求,用多线程比较合适,但是我需要每个线程的返回值,这就需要我在threading.Thread的基础上进行封装 import threading class MyThrea...

python并发编程之多进程、多线程、异步和协程详解

最近学习python并发,于是对多进程、多线程、异步和协程做了个总结。 一、多线程 多线程就是允许一个进程内存在多个控制权,以便让多个函数同时处于激活状态,从而让多个函数的操作同时运行...

django+js+ajax实现刷新页面的方法

本文实例讲述了django+js+ajax实现刷新页面的方法。分享给大家供大家参考,具体如下: 在服务器开发的时候,为了方便将服务器对外开一个接口来操作,可以使用django制作网页,通...

Python操作列表常用方法实例小结【创建、遍历、统计、切片等】

Python操作列表常用方法实例小结【创建、遍历、统计、切片等】

本文实例讲述了Python操作列表常用方法。分享给大家供大家参考,具体如下: 使用for循环,遍历整个列表 依次从列表中取出元素,存放到names变量中,并拼接打印 names =...