python中bs4.BeautifulSoup的基本用法

yipeiwu_com5年前Python基础

导入模块

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面试题之列表声明实例分析

python面试题之列表声明实例分析

本文实例讲述了python面试题之列表声明。分享给大家供大家参考,具体如下: 下面程序输出的结果为? val = [['a']*2]*2 print val val[0][1]='b...

Pytorch 神经网络—自定义数据集上实现教程

Pytorch 神经网络—自定义数据集上实现教程

第一步、导入需要的包 import os import scipy.io as sio import numpy as np import torch import torch.nn...

Python二叉树的镜像转换实现方法示例

Python二叉树的镜像转换实现方法示例

本文实例讲述了Python二叉树的镜像转换实现方法。分享给大家供大家参考,具体如下: 问题描述 操作给定的二叉树,将其变换为源二叉树的镜像。 思路描述 1. 代码比文字更直观 2. 文...

Python代码块批量添加Tab缩进的方法

选择一个合适的编辑器,比如notepad++、VS、eclipse、sublime text等,选中要集体缩进的代码块, 按Tab:集体缩进(向右) 按Shift+Tab:集体回缩(向左...

python3读取图片并灰度化图片的四种方法(OpenCV、PIL.Image、TensorFlow方法)总结

python3读取图片并灰度化图片的四种方法(OpenCV、PIL.Image、TensorFlow方法)总结

在处理图像的时候经常是读取图片以后把图片转换为灰度图。作为一个刚入坑的小白,我在这篇博客记录了四种处理的方法。 首先导入包: import numpy as np import cv...