bs4简单说就是可以智能读取html文件,用来爬网页中特定标签的信息,特定class等也行,定位爬取信息
各种基本标签格式等等
from bs4 import BeautifulSoup
file = open("./baidu.html","rb")
html = file.read().decode("utf-8")
bs = BeautifulSoup(html,"html.parser")
#print(bs.title)
#print(bs.a)
#print(bs.head)
#print(type(bs.head))
#1.Tag 标签及其内容;拿到它所找到的第一个内容
# print(bs.title.string)
#
# print(type(bs.title.string))
#2.NavigableString 标签里的内容(字符串)
#print(bs.a.attrs)
#print(type(bs))
#3.BeautifulSoup 表示整个文档
#print(bs.name)
#print(bs)
# print(bs.a.string)
# print(type(bs.a.string))
#4.Comment 是一个特殊的NavigableString ,输出的内容不包含注释符号
bs.find_all()这其中可以添加条件,特定class的标签,特定id的标签
#t_list= bs.find_all(id="head")
#t_list = bs.find_all(href="http://news.baidu.com")
#t_list = bs.find_all(class_=True)
#t_list= bs.find_all(text = "hao123")
#t_list = bs.find_all(text =["hao123","地图","贴吧"])
#t_list = bs.find_all(text = re.compile("\d")) #应用正则表达式来查找包含特定文本的内容(标签里的字符串)
#4.limit 参数
# t_list = bs.find_all("a",limit=3)
#
# for item in t_list:
# print(item)
#css选择器
#t_list = bs.select('title') #通过标签来查找
#t_list = bs.select(".mnav") #通过类名来查找
#t_list = bs.select("#u1") #通过id来查找
#t_list = bs.select("a[class='bri']") #通过属性来查找
# t_list = bs.select("head > title") #通过子标签来查找
t_list = bs.select(".mnav ~ .bri")
print(t_list[0].get_text())