python爬虫bs4

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)

bs.select()   css选择器

#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())

你可能感兴趣的:(爬虫,python,爬虫,开发语言)