python中bs4.BeautifulSoup的基本用法


Posted in Python onJuly 27, 2019

导入模块

from bs4 import BeautifulSoup
 
soup = BeautifulSoup(html_doc,"html.parser")

下面看下常见的用法

print(soup.a)
  # 拿到soup中的第一个a标签
 
 
 
  print(soup.a.name)
  # 获取a标签的名称
 
 
  print(soup.a.string)
  # 获取a标签的文本内容
 
 
  print(soup.a.text)
  # 获取a标签的文本内容
 
 
  print(soup.a["href"])
  # 获取a标签的href属性的值
 
  print(soup.a.get("href"))
  # 查找第一个a标签的href的属性
 
  print(soup.a.attrs)
  # 获取a标签的所有的属性,返回一个字典
 
 
 
  print(soup.find("a"))
  # 查找第一个a标签
 
 
  print(soup.find_all("a"))
  # 查找所有的a标签
 
 
  print(soup.find_all(id="a1"))
  # 查找所有的的id为a1的标签
 
 
  print(soup.find_all(class_="sistex"))
  # 这里需要注意,如果需要通过class去查找,则需要一个下划线
 
 
  print(soup.find_all(["a","p","br"]))
  # 查找所有的啊标签,p标签和br标签
 
 
  soup.find("a").attrs["class"] = "2b"
  # 修改某个标签的属性值
 
  del soup.find(id="a1").attrs["class"]
  # 删除某个标签的class属性
import re
 
soup.find(re.compile("b"))
# 标签中有b这个字符的标签
 
 
soup.select("a.syster")
# 这个可以放标签选择器
 
soup.select(".syster .abcd")
# 这个可以放标签选择器
 
 
soup.find("a").decompose()
# 从当前字符串中删除第一个a标签,是在原位置进行删除

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python开发中range()函数用法实例分析
Nov 12 Python
Python基础中所出现的异常报错总结
Nov 19 Python
Python实现扩展内置类型的方法分析
Oct 16 Python
Python构建网页爬虫原理分析
Dec 19 Python
python中验证码连通域分割的方法详解
Jun 04 Python
利用Python如何将数据写到CSV文件中
Jun 05 Python
对pyqt5多线程正确的开启姿势详解
Jun 14 Python
python射线法判断一个点在图形区域内外
Jun 28 Python
python创建属于自己的单词词库 便于背单词
Jul 30 Python
Python写出新冠状病毒确诊人数地图的方法
Feb 12 Python
基于CentOS搭建Python Django环境过程解析
Aug 24 Python
详解python算法常用技巧与内置库
Oct 17 Python
Django的Modelforms用法简介
Jul 27 #Python
在django admin中添加自定义视图的例子
Jul 26 #Python
深入了解Django中间件及其方法
Jul 26 #Python
如何在Django项目中引入静态文件
Jul 26 #Python
Python 画出来六维图
Jul 26 #Python
django做form表单的数据验证过程详解
Jul 26 #Python
python用win32gui遍历窗口并设置窗口位置的方法
Jul 26 #Python
You might like
农民C键的运用技巧
2020/03/04 星际争霸
分享一则PHP定义函数代码
2015/02/26 PHP
用PHP代码给图片加水印
2015/07/01 PHP
Zend Framework动作助手(Zend_Controller_Action_Helper)用法详解
2016/03/05 PHP
php/JS实现的生成随机密码(验证码)功能示例
2019/06/06 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
2019/08/03 PHP
JS是否可以跨文件同时控制多个iframe页面的应用技巧
2007/12/16 Javascript
javascript call和apply方法
2008/11/24 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
JQuery ztree 异步加载实例讲解
2016/02/25 Javascript
原生js实现无缝轮播图效果
2017/01/11 Javascript
layui获取选中行数据的实例讲解
2018/08/19 Javascript
小程序转发探索示例
2019/02/19 Javascript
Vue运用transition实现过渡动画
2019/05/06 Javascript
ES6 Object属性新的写法实例小结
2019/06/25 Javascript
Vue中fragment.js使用方法小结
2020/02/17 Javascript
JavaScript实现拖拽和缩放效果
2020/08/24 Javascript
JavaScript中常用的3种弹出提示框(alert、confirm、prompt)
2020/11/10 Javascript
[49:27]LGD vs OG 2018国际邀请赛小组赛BO2 第二场 8.16
2018/08/17 DOTA
Python中处理时间的几种方法小结
2015/04/09 Python
Python实现二叉堆
2016/02/03 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
在Django model中设置多个字段联合唯一约束的实例
2019/07/17 Python
python树的同构学习笔记
2019/09/14 Python
django 框架实现的用户注册、登录、退出功能示例
2019/11/28 Python
Python通过socketserver处理多个链接
2020/03/18 Python
通过HTML5 Canvas API绘制弧线和圆形的教程
2016/03/14 HTML / CSS
性能服装:HYLETE
2018/08/14 全球购物
迪士尼西班牙官方网上商店:ShopDisney西班牙
2020/02/02 全球购物
校园门卫岗位职责
2013/12/09 职场文书
致铅球运动员广播稿精选
2014/01/12 职场文书
2016年综治和平安建设宣传月活动总结
2016/04/01 职场文书
Nginx+Tomcat实现负载均衡、动静分离的原理解析
2021/03/31 Servers
vue完美实现el-table列宽自适应
2021/05/08 Vue.js
浅析MySQL如何实现事务隔离
2021/06/26 MySQL
Apache Hudi 加速传统的批处理模式
2022/04/24 Servers