beautifulsoup: 用来提取请求返回信息
安装:pip install beautifulsoup4
平行遍历,发生在同一个父节点下的各节点间
标签的平行遍历的结果不一定是标签
常用方法展示
import requests
from bs4 import BeautifulSoup
import re
url = 'http://python123.io/ws/demo.html'
try:
r = requests.get(url)
demo = r.text
soup = BeautifulSoup(demo, "html.parser") #html.parser是解释器
# print(soup.title) #打印标题
# print(soup.a) #打印第一个标签是<a>的标签的内容
# print(soup.find_all('a')) #获取所有的a标签
# print(soup.find_all(True)) #获取所有的标签
print(soup.find_all(re.compile('b'))) #获取所有b开头的标签
# print(soup.a.name) #标签名字
# print(soup.a.string) #标签string???
# print(soup.a.attrs) #标签属性
# print(soup.a.attrs['class']) #获取指定的属性的值
# print(soup.a.parent.name) #打印a的父亲的名字
# print(soup.a.parents) #打印a的先辈
# print(soup.a.parent.parent.name) #打印a的父亲的父亲的名字
# print(soup.prettify())#打印整个页面
# print(soup.head) #打印head
# print(soup.head.contents) #打印head
# print(soup.body.contents)
# print(soup.body.children)
# for child in soup.body.children:
# print(child)
# print(soup.a.next_sibling)
# print(soup.a.next_sibling.next_sibling)
# print(soup.a.previous_sibling)
except:
print('get fail')