Python3使用requests包抓取并保存网页源码的方法


Posted in Python onMarch 15, 2016

本文实例讲述了Python3使用requests包抓取并保存网页源码的方法。分享给大家供大家参考,具体如下:

使用Python 3的requests模块抓取网页源码并保存到文件示例:

import requests
html = requests.get("http://www.baidu.com")
with open('test.txt','w',encoding='utf-8') as f:
 f.write(html.text)

这是一个基本的文件保存操作,但这里有几个值得注意的问题:

1.安装requests包,命令行输入pip install requests即可自动安装。很多人推荐使用requests,自带的urllib.request也可以抓取网页源码

2.open方法encoding参数设为utf-8,否则保存的文件会出现乱码。

3.如果直接在cmd中输出抓取的内容,会提示各种编码错误,所以保存到文件查看。

4.with open方法是更好的写法,可以自动操作完毕后释放资源。

另一个例子:

import requests
ff = open('testt.txt','w',encoding='utf-8')
with open('test.txt',encoding="utf-8") as f:
 for line in f:
 ff.write(line)
ff.close()

这是演示读取一个txt文件,每次读取一行,并保存到另一个txt文件中的示例。

因为在命令行中打印每次读取一行的数据,中文会出现编码错误,所以每次读取一行并保存到另一个文件,这样来测试读取是否正常。(注意open的时候制定encoding编码方式)

转自:小谈博客 http://www.tantengvip.com/2015/05/requests-html/

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python列表计数及插入实例
Dec 17 Python
python使用htmllib分析网页内容的方法
May 08 Python
Python中的浮点数原理与运算分析
Oct 12 Python
python利用rsa库做公钥解密的方法教程
Dec 10 Python
Django 实现购物车功能的示例代码
Oct 08 Python
python 划分数据集为训练集和测试集的方法
Dec 11 Python
python爬虫 Pyppeteer使用方法解析
Sep 28 Python
Python模块的制作方法实例分析
Dec 21 Python
Python发送手机动态验证码代码实例
Feb 28 Python
OpenCV Python实现拼图小游戏
Mar 23 Python
解决Python发送Http请求时,中文乱码的问题
Apr 30 Python
python一些性能分析的技巧
Aug 30 Python
Python减少循环层次和缩进的技巧分析
Mar 15 #Python
Python作用域用法实例详解
Mar 15 #Python
Python的净值数据接口调用示例分享
Mar 15 #Python
Python简单连接MongoDB数据库的方法
Mar 15 #Python
Python函数中的函数(闭包)用法实例
Mar 15 #Python
实例讲解Python中函数的调用与定义
Mar 14 #Python
Python使用multiprocessing实现一个最简单的分布式作业调度系统
Mar 14 #Python
You might like
PHP简介
2006/10/09 PHP
php 传值赋值与引用赋值的区别
2010/12/29 PHP
destoon实现会员商铺中指定会员或会员组投放广告的方法
2014/08/21 PHP
跨浏览器PHP下载文件名中的中文乱码问题解决方法
2015/03/05 PHP
javascript addBookmark 加入收藏 多浏览器兼容
2009/08/15 Javascript
jQuery图片滚动图片的效果(另类实现)
2013/06/02 Javascript
千分位数字格式化(用逗号隔开 代码已做了修改 支持0-9位逗号隔开)的JS代码
2013/12/05 Javascript
用Javascript获取页面元素的具体位置
2013/12/09 Javascript
js实现div层缓慢收缩与展开的方法
2015/05/11 Javascript
实现音乐播放器的代码(html5+css3+jquery)
2015/08/04 Javascript
jQuery解决input超多的表单提交
2015/08/10 Javascript
浅谈jquery的map()和each()方法
2016/06/12 Javascript
基于Turn.js 实现翻书效果实例解析
2016/06/20 Javascript
JavaScript使用forEach()与jQuery使用each遍历数组时return false 的区别
2016/08/26 Javascript
Bootstrap基本插件学习笔记之折叠(22)
2016/12/08 Javascript
Json实现传值到后台代码实例
2020/06/30 Javascript
[58:29]DOTA2-DPC中国联赛 正赛 Phoenix vs XG BO3 第一场 1月31日
2021/03/11 DOTA
python实现类似ftp传输文件的网络程序示例
2014/04/08 Python
python实现登陆知乎获得个人收藏并保存为word文件
2015/03/16 Python
Python松散正则表达式用法分析
2016/04/29 Python
python中reload(module)的用法示例详解
2017/09/15 Python
使用Python的turtle模块画图的方法
2017/11/15 Python
python2.7实现爬虫网页数据
2018/05/25 Python
pytorch + visdom 处理简单分类问题的示例
2018/06/04 Python
Python 使用folium绘制leaflet地图的实现方法
2019/07/05 Python
基于python实现自动化办公学习笔记(CSV、word、Excel、PPT)
2019/08/06 Python
使用Windows批处理和WMI设置Python的环境变量方法
2019/08/14 Python
Pytorch中膨胀卷积的用法详解
2020/01/07 Python
Python requests模块session代码实例
2020/04/14 Python
深入分析python 排序
2020/08/24 Python
职业培训师职业生涯规划
2014/02/18 职场文书
简历自荐信范文
2015/03/09 职场文书
小学语文继续教育研修日志
2015/11/13 职场文书
python3实现无权最短路径的方法
2021/05/12 Python
用React Native制作一个简单的游戏引擎
2021/05/27 Javascript
MySQL query_cache_type 参数与使用详解
2021/07/01 MySQL