下载
- pip install bs4
- pip install lxml
实例化对象
- 本地读取数据
from bs4 import BeautifulSoup
fp = open('./test.html', 'r', encoding='utf-8')
soupLocal = BeautifulSoup(fp, 'lxml')
- 从网络读取数据
import requests
from bs4 import BeautifulSoup
page_text = requests.get('https://www.baidu.com').text
soupNet = BeautifulSoup(fp, 'lxml')
find和findAll
- soup.tagName
返回文档中第一次出现的标签(单个) - soup.find('tagName')
返回文档中第一次出现的标签(单个),等同soup.tagName - soup.find('tagName',属性=)
返回文档中第一次出现的标签(单个),带属性定位class_/hres/src等 - soup.findAll('tagName')
返回符合要求的所有标签(列表)
select
- soup.select('.du')
选择器查找,class/id/标签等(列表) - soup.select
相连层级选择器(列表),'>'连接,表示层间相连 - print(soup.select('.tang > ul > li > a')[0])
- soup.select
多层层级选择器(列表),空格连接,表示不管中间相隔几个层级 - print(soup.select('.tang > ul a')[0])