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


Posted in Python onMay 21, 2018

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

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

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

实现代码如下:

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下载一个网页保存为本地的HTML文件实例

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

以上这篇用Python下载一个网页保存为本地的HTML文件实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pip 错误unused-command-line-argument-hard-error-in-future解决办法
Jun 01 Python
Python实现115网盘自动下载的方法
Sep 30 Python
Python实现Linux命令xxd -i功能
Mar 06 Python
在Python中通过threading模块定义和调用线程的方法
Jul 12 Python
Python进行数据提取的方法总结
Aug 22 Python
Python实现破解12306图片验证码的方法分析
Dec 29 Python
Python实现通过继承覆盖方法示例
Jul 02 Python
Python使用pymongo模块操作MongoDB的方法示例
Jul 20 Python
Python八皇后问题解答过程详解
Jul 29 Python
python每天定时运行某程序代码
Aug 16 Python
详解Python+Selenium+ChromeDriver的配置和问题解决
Jan 19 Python
常用的Python代码调试工具总结
Jun 23 Python
Python读取本地文件并解析网页元素的方法
May 21 #Python
详解Python中的四种队列
May 21 #Python
Python实现的当前时间多加一天、一小时、一分钟操作示例
May 21 #Python
Python自定义函数实现求两个数最大公约数、最小公倍数示例
May 21 #Python
Python基于递归和非递归算法求两个数最大公约数、最小公倍数示例
May 21 #Python
Python常用字符串替换函数strip、replace及sub用法示例
May 21 #Python
Python下使用Scrapy爬取网页内容的实例
May 21 #Python
You might like
PHP5.0对象模型探索之抽象方法和抽象类
2006/09/05 PHP
生成卡号php代码
2008/04/09 PHP
php实现parent调用父类的构造方法与被覆写的方法
2015/02/11 PHP
浅谈PHP中的数据传输CURL
2016/09/06 PHP
基于jquery的获取浏览器窗口大小的代码
2011/03/28 Javascript
JavaScript高级程序设计 阅读笔记(十八) js跨平台的事件
2012/08/14 Javascript
JS 实现列表与多选框选择附预览动画
2014/10/29 Javascript
javascript获取flash版本号的方法
2014/11/20 Javascript
vue.js通过自定义指令实现数据拉取更新的实现方法
2016/10/18 Javascript
详解vue-admin和后端(flask)分离结合的例子
2018/02/12 Javascript
vue实现选项卡及选项卡切换效果
2018/04/24 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
2018/06/19 Javascript
vue3.0 CLI - 2.5 - 了解组件的三维
2018/09/14 Javascript
vue 属性拦截实现双向绑定的实例代码
2018/10/24 Javascript
详解wepy开发小程序踩过的坑(小结)
2019/05/22 Javascript
jquery实现简易验证插件封装
2020/09/13 jQuery
nestjs中异常过滤器Exceptionfilter的具体使用
2021/02/07 Javascript
[01:45]DOTA2众星出演!DSPL刀塔次级职业联赛宣传片
2014/11/21 DOTA
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
Python字符串处理之count()方法的使用
2015/05/18 Python
python简单图片操作:打开\显示\保存图像方法介绍
2017/11/23 Python
Python使用import导入本地脚本及导入模块的技巧总结
2019/08/07 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
Python之time模块的时间戳,时间字符串格式化与转换方法(13位时间戳)
2019/08/12 Python
Python编程快速上手——strip()函数的正则表达式实现方法分析
2020/02/29 Python
django inspectdb 操作已有数据库数据的使用步骤
2021/02/07 Python
css3实现3D色子翻转特效
2014/12/23 HTML / CSS
英国领先的NHS批准的在线药店:Pharmacy2U
2017/01/06 全球购物
美国运动鞋类和服装零售连锁店:Shoe Palace
2019/08/13 全球购物
澳大利亚购买健身器材网站:Gym Direct
2019/12/19 全球购物
分布式数据库需要考虑哪些问题
2013/12/08 面试题
租房协议书范本
2014/04/09 职场文书
法人委托书范本
2014/09/15 职场文书
2014年小班保育员工作总结
2014/12/23 职场文书
元宵节晚会主持词
2015/07/01 职场文书
《雪域豹影》读后感:父爱的伟大
2019/12/23 职场文书