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

yipeiwu_com6年前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 简易计算器程序,代码就几行

代码: 复制代码 代码如下: import os while True: dynamic = input('输入计算表达式:') if dynamic != 'cls': try: re...

原生python实现knn分类算法

原生python实现knn分类算法

一、题目要求 用原生Python实现knn分类算法。 二、题目分析 数据来源:鸢尾花数据集(见附录Iris.txt) 数据集包含150个数据集,分为3类,分别是:Iris Setosa(...

深入理解Python中的super()方法

前言 python的类分别有新式类和经典类,都支持多继承。在类的继承中,如果你想要重写父类的方法而不是覆盖的父类方法,这个时候我们可以使用super()方法来实现 python语言与C+...

Python模拟登录12306的方法

本文实例讲述了Python模拟登录12306的方法。分享给大家供大家参考。 具体实现方法如下: 复制代码 代码如下: #!/usr/bin/python # -*- coding: ut...

Python3单行定义多个变量或赋值方法

Python3单行定义多个变量或赋值方法

你甚至可以在一行内将多个值赋值给多个变量 >>> a , b = 45, 54 >>> a 45 >>> b 54 这个技巧用...