c语言sscanf函数的用法是什么
255
2022-10-01
Python 爬虫学习04 bs库示例学习(beautifulSoup)
'''BeaturifulSoup4 将复杂HTML文档转换成一个复杂的树形结构,每个节点都是Python对象,所有对象可以归纳为4种:- Tag- NavigableString- BeautifulSoup- Comment'''from bs4 import BeautifulSoupfile = open("./Mytest3.html","rb")html = file.read()#这个对象需要指定一个html.paser的解析器 已通过文档在解析器中形成一颗树bs = BeautifulSoup(html,"html.parser")#1.Tag 标签及其内容,拿到他所找到的第一个内容# print(type(bs.head))# print(bs.title)# print(bs.a)# print(bs.a.string)# print(type(bs.a.string))#2.NavigableString 标签里的内容(字符串)# print(type(bs.a.attrs))#3.BeautifulSoup 表示整个文档#print(bs)#4.Comment 是一个特殊的NavigableString#文档的遍历# print(bs.body.contents)# print(bs.body.contents[1])import re#文档的搜索#(1)find_all()#字符串过滤:会查找与字符串完全匹配的内容# t_list = bs.find_all(re.compile("a"))# print(t_list)#方法 : 传入一个函数(方法),根据函数的要求来搜索# def name_is_exists(tag):# return tag.has_attr("name")## t_list = bs.find_all((name_is_exists))# for item in t_list:# print(item)#(2)kwargs 参数# t_list = bs.find_all(type="text")## for item in t_list:# print(item)#3.text参数#t_list = bs.find_all(value="ouou1")#也可以写成列表的形式#t_list = bs.find_all(value=["ouou1","ouou2"])#应用正则表达式来查找包含特定文本的内容(标签里的字符串)# t_list = bs.find_all(value=re.compile("\d"))# for item in t_list:# print(item)#4.limit 参数# t_list = bs.find_all("a")# #limit 限定获取个数# t_list = bs.find_all("a",limit=2)## for item in t_list:# print(item)#css选择器#通过标签来查找#t_list = bs.select('button')#通过.类名来查找#t_list = bs.select('.droptarget')#通过#id来查找#t_list = bs.select("#myVideo")#通过属性来查找#t_list = bs.select('input[type="color"]')#通过子标签来查找# t_list = bs.select('body > p')# for item in t_list:# print(item)
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~