Python爬虫库BeautifulSoup如何获取对象(标签)名,属性,内容,注释

  介绍

这篇文章主要介绍了Python爬虫库BeautifulSoup如何获取对象(标签)名,属性,内容,注释,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获、下面让小编带着大家一起了解一下。

Python的数据类型有哪些吗?

python的数据类型:1。数字类型,包括int(整型),长(长整型)和浮子(浮点型)。2。字符串,分别是str类型和unicode类型。3。布尔型,Python布尔类型也是用于逻辑运算,有两个值:True(真)和虚假的(假)。4。列表,列表是Python中使用最频繁的数据类型,集合中可以放任何数据类型。5。元组,元组用“()”标识,内部元素用逗号隔开。6。字,字典典是一种键值对的集合。7。集合,集合是一个无序的,不重复的数据组合。

一、标签(标签)对象

1。XML或HTML标记对象与原生文档中的标签相同。

得到bs4  import  BeautifulSoup   时间=soup  BeautifulSoup (& # 39; & lt; b 类=癰oldest"祝辞Extremely  bold & # 39;, & # 39; lxml # 39;)   tag =soup.b   类型(标签) bs4.element.Tag

2.标签的名称属性

每个标签都有自己的名字,通过. Name来获取

tag.name & # 39; b # 39; tag.name =,“blockquote", #,对原始文档进行修改   标记 & lt; blockquote 类=癰oldest"祝辞Extremely  bold

3。标记的属性属性

获取单个属性

标记(& # 39;类# 39;] [& # 39;大胆# 39;]

按字典的方式获取全部属性

标记。attrs {& # 39;类# 39;:,(& # 39;大胆# 39;]}

添加属性

标记(& # 39;类# 39;],=,& # 39;verybold& # 39;   标签(& # 39;id # 39;],=, 1   打印(标签) & lt; blockquote 类=皏erybold", id=?”;在Extremely  bold

删除属性

del 标签(& # 39;类# 39;】   del 标记[& # 39;id # 39;】   标记 & lt; blockquote> Extremely  bold

4。标签的多值属性

多值属性会返回一个列表

css_soup =, BeautifulSoup (& # 39; & lt; p 类=癰ody  strikeout"祝辞& lt;/p> & # 39;, & # 39; lxml # 39;)   打印(css_soup.p[& # 39;类# 39;]) [& # 39;身体# 39;,,& # 39;三振# 39;] rel_soup =, BeautifulSoup (& # 39; & lt; p> Back 用,& lt; a  rel=癷ndex"祝辞homepage & lt;/p> & # 39;, & # 39; lxml # 39;)   打印(rel_soup.a [& # 39; rel # 39;])   rel_soup.a [& # 39; rel # 39;],=,(& # 39;指数# 39;,,& # 39;内容# 39;】   打印(rel_soup.p) [& # 39;指数# 39;】   & lt; p> Back 用,& lt; a  rel=癷ndex  contents"祝辞homepage & lt;/p>

如果转换的文档是XML格式,那么标记中不包含多值属性

xml_soup =, BeautifulSoup (& # 39; & lt; p 类=癰ody  strikeout"祝辞& lt;/p> & # 39;,, & # 39; XML # 39;)   xml_soup.p[& # 39;类# 39;] & # 39; body 三振# 39;

二,可遍历字符串(NavigableString)

1。字符串常被包含在标签内,使用NavigableString类来包装标签中的字符串

得到bs4  import  BeautifulSoup   时间=soup  BeautifulSoup (& # 39; & lt; b 类=癰oldest"祝辞Extremely  bold & # 39;, & # 39; lxml # 39;)   tag =soup.b   打印(tag.string)   print(类型(tag.string) Extremely 大胆   & lt; class  & # 39; bs4.element.NavigableString& # 39;在

<课程> 2。一个NavigableString字符串与Python中的str字符串相同,通过str()方法可以直接将NavigableString对象转换成str字符串

unicode_string =, str (tag.string)   打印(unicode_string)   print(类型()的unicode_string) Extremely 大胆   & lt; class  & # 39; str # 39;在

3。标签中包含的字符串不能编辑,但是可以被替换成其它的字符串,用replace_with()方法

tag.string.replace_with (“No  longer  bold")   标记 & lt; b 类=癰oldest"祝辞No  longer  bold

三,BeautifulSoup对象BeautifulSoup对象表示的是一个文档的全部内容。

Python爬虫库BeautifulSoup如何获取对象(标签)名,属性,内容,注释