import bs4str = '''<title id="tit">尚学堂</title><div class='info' float='left'>Welcome to SXT</div><div class='info' float='right'> <span>Good Good Study</span> <a href='www.bjsxt.cn'></a> <strong><!--没用--></strong></div>'''# 创建 bs 对象bs = bs4.BeautifulSoup(str, 'lxml')# 获取第一个标签print(bs.title)# 获得所有标签属性print(bs.div.attrs)# 获得单个标签属性print(bs.div.get('class'))print(bs.div['class'])# 获得属性中的内容print(bs.div.string)print(bs.div.text)# 获取标签注释中解析的内容print(bs.strong.string)print(bs.strong.text)# 判断bs四大对象类型if type(bs.strong.string) == bs4.element.Comment: print('这是一个注释') # 获取标签注释中解析的内容 print(bs.strong.string) # 原样输出注释 print(bs.strong.prettify())print('------------find_all------------')# 通过标签查找print(bs.find_all('title'))# 通过 id 查找print(bs.find_all(id = 'tit'))# 通过 classprint(bs.find_all(class_ = 'info'))# 通过属性print(bs.find_all(attrs = {'float': 'left'}))# 通过标签和属性查找print(bs.find_all('div', attrs = {'float': 'left'}))# 通过 css选择器 查找print('------------css------------')# idprint(bs.select('#tit'))# classprint(bs.select('.info'))# div 下的 spanprint(bs.select('div span'))# 顺序和层级选择 , 选择所有 div 下第一个 div 中的 spanprint(bs.select('div')[1].select('span'))