前言:学习Bs4解析需要一定的html知识,学习过html的博友们不难上手Bs4解析。
一、Bs4解析
- find(标签,attrs={属性:属性值}):找第一个。
table = page.find("dt",attrs={"class":"basicInfo-item name"})
- find_all(标签,attrs={属性:属性值}):找全部。
table = page.find_all("dt",attrs={"class":"basicInfo-item name"})
table = page.find_all("dt")
table_get = table.get(class)
?返回的类型是字符串型。
二、Bs4在Python中的使用
例如我需要图片中“狮子座流星雨”,这段文字,可以这样写。
import requests
from bs4 import BeautifulSoup
url = "https://baike.baidu.com/item/%E7%8B%AE%E5%AD%90%E5%BA%A7%E6%B5%81%E6%98%9F%E9%9B%A8/151437?fr=aladdin"
header ={
"user-agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.69 Safari/537.36"
}
resp = requests.get(url,headers=header)
#把页面源码交给BeautifulSoup进行处理,生成bs对象,并且指定为html解析器
page = BeautifulSoup(resp.text, "html.parser")
table = page.find("span",attrs={"class":"title-prefix"})
print(table.text)#狮子座流星雨
|