浅谈Python中的bs4基础


Posted in Python onOctober 21, 2018

安装

在命令提示符框中直接输入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 相关文章推荐
利用Python绘制MySQL数据图实现数据可视化
Mar 30 Python
Python守护进程用法实例分析
Jun 04 Python
python中reload(module)的用法示例详解
Sep 15 Python
对python多线程与global变量详解
Nov 09 Python
解决pycharm最左侧Tool Buttons显示不全的问题
Dec 17 Python
Python tkinter三种布局实例详解
Jan 06 Python
解决pytorch报错:AssertionError: Invalid device id的问题
Jan 10 Python
python实现简单井字棋游戏
Mar 04 Python
matplotlib jupyter notebook 图像可视化 plt show操作
Apr 24 Python
python json.dumps() json.dump()的区别详解
Jul 14 Python
如何基于python把文字图片写入word文档
Jul 31 Python
Python timeit模块原理及使用方法
Oct 10 Python
python清除字符串前后空格函数的方法
Oct 21 #Python
Windows系统下PhantomJS的安装和基本用法
Oct 21 #Python
Scrapy框架使用的基本知识
Oct 21 #Python
python去掉 unicode 字符串前面的u方法
Oct 21 #Python
python 分离文件名和路径以及分离文件名和后缀的方法
Oct 21 #Python
python之消除前缀重命名的方法
Oct 21 #Python
使用Scrapy爬取动态数据
Oct 21 #Python
You might like
ThinkPHP CURD方法之data方法详解
2014/06/18 PHP
[全兼容哦]--实用、简洁、炫酷的页面转入效果loing
2007/05/07 Javascript
javascript 日期时间函数(经典+完善+实用)
2009/05/27 Javascript
httpclient模拟登陆具体实现(使用js设置cookie)
2013/12/11 Javascript
js实现可兼容IE、FF、Chrome、Opera及Safari的音乐播放器
2015/02/11 Javascript
jQuery动态效果显示人物结构关系图的方法
2015/05/07 Javascript
jQuery easyui的validatebox校验规则扩展及easyui校验框validatebox用法
2016/01/18 Javascript
详解jQuery UI库中文本输入自动补全功能的用法
2016/04/23 Javascript
jQuery绑定事件on()与弹窗的简要概述
2016/04/27 Javascript
js判断所有表单项不为空则提交表单的实现方法
2016/09/09 Javascript
js生成随机数方法和实例
2017/01/17 Javascript
详解用vue-cli来搭建vue项目和webpack
2017/04/20 Javascript
jQuery异步提交表单实例
2017/05/30 jQuery
javascript数组定义的几种方法
2017/10/06 Javascript
JS实现将链接生成二维码并转为图片的方法
2018/03/17 Javascript
微信小程序实现点击空白隐藏的方法示例
2019/08/13 Javascript
layui-tree实现Ajax异步请求后动态添加节点的方法
2019/09/23 Javascript
解决vue单页面 回退页面 keeplive 缓存问题
2020/07/22 Javascript
vue+echarts实现动态折线图的方法与注意
2020/09/01 Javascript
Python列表append和+的区别浅析
2015/02/02 Python
django轻松使用富文本编辑器CKEditor的方法
2017/03/30 Python
利用Python如何生成hash值示例详解
2017/12/20 Python
python 类对象和实例对象动态添加方法(分享)
2017/12/31 Python
使用Python实现正态分布、正态分布采样
2019/11/20 Python
python 使用cx-freeze打包程序的实现
2020/03/14 Python
python3爬虫GIL修改多线程实例讲解
2020/11/24 Python
Python爬虫scrapy框架Cookie池(微博Cookie池)的使用
2021/01/13 Python
CSS3 filter(滤镜)实现网页灰色或者黑色模式的示例代码
2021/02/24 HTML / CSS
浅谈HTML5中dialog元素尝鲜
2018/10/15 HTML / CSS
html5移动端价格输入键盘的实现
2019/09/16 HTML / CSS
旅游管理专业学生求职信
2013/09/28 职场文书
商场端午节活动方案
2014/01/29 职场文书
将相和教学反思
2014/02/04 职场文书
股权转让协议书
2014/12/07 职场文书
二审答辩状格式
2015/05/22 职场文书
2015银行年终工作总结范文
2015/05/26 职场文书