【Python】爬虫-----数据解析之Bs4解析

前言:学习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"})
  • get(属性):获取属性值。 
table = page.find("dt")
table_get = table.get(class)#拿到dt标签的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)#狮子座流星雨

Guess you like

Origin blog.csdn.net/qq_26082507/article/details/121378468