python 从web抓取数据
《Python编程快速上手》学习笔记
webbrowser 模块
webbrowser 是 Python 自带的,打开浏览器获取指定页面。
import webbrowser
webbrowser.open('http://www.gutenberg.org/')
用 requests 模块从 Web 下载文件
从因特网上下载文件和网页。
requests 模块让你很容易从 Web 下载文件,不必担心一些复杂的问题,requests 模块不是 Python 自带的,所以必须先安装。
import requests
res = requests.get('http://www.gutenberg.org/cache/epub/1112/pg1112.txt')
将下载的文件保存到硬盘
可以用标准的 open()函数和 write()方法,将 Web 页面保存到硬盘中的一个文件。
注:写文件,“写二进制”模式打开该文件,即向函数传入字符串’wb’,作为 open()的第二参数。
目的是为了保存该文本中的“Unicode 编码”。
下载并保存到文件的完整过程如下:
1.调用 requests.get()下载该文件。
2.用’wb’调用 open(),以写二进制的方式打开一个新文件。
3.利用 Respose 对象的 iter_content()方法做循环。
4.在每次迭代中调用 write(),将内容写入该文件。
5.调用 close()关闭该文件。
file = open('pg1112.txt','wb')
if file:
for line in res.iter_content(100000):
file.write(line);
file.close()
拆解网页
利用浏览器的自带功能,快速查看网页的HTML源代码,包括‘查看源代码’及‘检查’。
解析网页 – BeautifulSoup模块
解析 HTML,即网页编写的格式。
BeautifulSoup 模块需要下载,可以通过如下指令安装:
pip3 install beautifulsoup4
以上就是python 从web抓取数据的基本流程了。