浅谈Python中的bs4基础

yipeiwu_com6年前Python基础

安装

在命令提示符框中直接输入pip install beautifulsoup4

介绍

beautifulsoup是python的一个第三方库,和xpath一样,都是用来解析html数据的。

引入

from bs4 import BeautifulSoup

使用

将一段文档传入BeautifulSoup的构造方法,就能得到一个文档的对象。

bs = BeautifulSoup(open('index.html',encoding='utf-8'),'lxml')
print(bs)

注意:这样上传文档的话,BeautifulSoup里面需要两个参数。一个为open方法,一个是固定写法,也就是解析器。

open方法里面也同样需要两个参数,一个是想要解析的数据,另一个为设置编码的格式。

(1)获取网页中的title标签

print(bs.title)

(2)获取head标签及标签内部的所有其他标签

print(bs.head)

(3)获取当中的第一个a标签

print(bs.a)

注意:获取文档当中所有的xx当中第一个xx或者第一个xx里面的内容。都可以用bs.xx来获取

(4)获取指定标签的所有属性

print(bs.a.attrs)

(5)获取标签的属性

print(bs.a['href'])

(6)获取标签的文本内容。

print(bs.a.string)

注意:string获取的文本指的是本标签的文本,不包含子标签的文本

(7)contents能够获取指定标签下面的所有内容。

print(bs.body.contents)

(8)获取所有内容当中指定索引的内容

print(bs.div.contents[3])

(9)通过id和类名来找标签

print(bs.find(id='kw'))
print(bs.find(class_='shopping'))

注意:id是唯一的,通过id来找,只能找到一个,所以用find,而class不是唯一的,通过class来找,就有可能找到多个。

(10)select选择指定的标签

print(bs.select('title'))
print(bs.select('a'))

在bs4中,小数点“.”表示类名,#表示id

print(bs.select('.first'))
print(bs.select('#kw'))
print(bs.select('div.now'))

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

Django url,从一个页面调到另个页面的方法

创建项目和应用 django-admin startproject zqxt_views(项目名) cd zqxt_views python manage.py startapp c...

python中实现k-means聚类算法详解

python中实现k-means聚类算法详解

算法优缺点: 优点:容易实现 缺点:可能收敛到局部最小值,在大规模数据集上收敛较慢 使用数据类型:数值型数据 算法思想 k-means算法实际上就是通过计算不同样本间的距离来判断他们...

Python import用法以及与from...import的区别

在python用import或者from...import来导入相应的模块。模块其实就是一些函数和类的集合文件,它能实现一些相应的功能,当我们需要使用这些功能的时候,直接把相应的模块导入...

对Python实现简单的API接口实例讲解

对Python实现简单的API接口实例讲解

get方法 代码实现 # coding:utf-8 import json from urlparse import parse_qs from wsgiref.simple_s...

python进程管理工具supervisor使用实例

python进程管理工具supervisor使用实例

平时我们写个脚本,要放到后台执行去,我们怎么做呢? 复制代码 代码如下: nohup python example.py 2>&1 /dev/null & 用tumx或者scre...