- Python数据科学教程
- Python数据科学 - 首页
- Python数据科学 - 入门
- Python数据科学 - 环境搭建
- Python数据科学 - Pandas
- Python数据科学 - NumPy
- Python数据科学 - SciPy
- Python数据科学 - Matplotlib
- Python数据处理
- Python数据操作
- Python数据清洗
- Python处理CSV数据
- Python处理JSON数据
- Python处理XLS数据
- Python关系型数据库
- Python NoSQL数据库
- Python日期和时间
- Python数据整理
- Python数据聚合
- Python读取HTML页面
- Python处理非结构化数据
- Python分词
- Python词干提取和词形还原
- Python数据可视化
- Python图表属性
- Python图表样式
- Python箱线图
- Python热力图
- Python散点图
- Python气泡图
- Python 3D图表
- Python时间序列
- Python地理数据
- Python图数据
Python - 读取HTML页面
名为Beautiful Soup的库。使用这个库,我们可以搜索HTML标签的值,并获取特定数据,例如页面的标题和页面的标题列表。
安装Beautiful Soup
使用Anaconda包管理器安装所需的包及其依赖包。
conda install Beaustifulsoap
读取HTML文件
在下面的例子中,我们向一个URL发出请求,将其加载到Python环境中。然后使用html解析器参数读取整个HTML文件。接下来,我们打印HTML页面的前几行。
import urllib2 from bs4 import BeautifulSoup # Fetch the html file response = urllib2.urlopen('https://tutorialspoint.com/python/python_overview.htm') html_doc = response.read() # Parse the html file soup = BeautifulSoup(html_doc, 'html.parser') # Format the parsed html file strhtm = soup.prettify() # Print the first few characters print (strhtm[:225])
执行上述代码后,将产生以下结果。
<!DOCTYPE html> <!--[if IE 8]><html class="ie ie8"> <![endif]--> <!--[if IE 9]><html class="ie ie9"> <![endif]--> <!--[if gt IE 9]><!--> <html> <!--<![endif]--> <head> <!-- Basic --> <meta charset="utf-8"/> <title>
提取标签值
我们可以使用以下代码从标签的第一个实例中提取标签值。
import urllib2 from bs4 import BeautifulSoup response = urllib2.urlopen('https://tutorialspoint.com/python/python_overview.htm') html_doc = response.read() soup = BeautifulSoup(html_doc, 'html.parser') print (soup.title) print(soup.title.string) print(soup.a.string) print(soup.b.string)
执行上述代码后,将产生以下结果。
Python Overview Python Overview None Python is Interpreted
提取所有标签
我们可以使用以下代码从标签的所有实例中提取标签值。
import urllib2 from bs4 import BeautifulSoup response = urllib2.urlopen('https://tutorialspoint.com/python/python_overview.htm') html_doc = response.read() soup = BeautifulSoup(html_doc, 'html.parser') for x in soup.find_all('b'): print(x.string)
执行上述代码后,将产生以下结果。
Python is Interpreted Python is Interactive Python is Object-Oriented Python is a Beginner's Language Easy-to-learn Easy-to-read Easy-to-maintain A broad standard library Interactive Mode Portable Extendable Databases GUI Programming Scalable
广告