国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python利用Beautiful Soup模塊搜索內容詳解

2020-02-23 04:29:09
字體:
來源:轉載
供稿:網友

前言

我們將利用 Beautiful Soup 模塊的搜索功能,根據標簽名稱、標簽屬性、文檔文本和正則表達式來搜索。

搜索方法

Beautiful Soup 內建的搜索方法如下:

find() find_all() find_parent() find_parents() find_next_sibling() find_next_siblings() find_previous_sibling() find_previous_siblings() find_previous() find_all_previous() find_next() find_all_next()

使用 find() 方法搜索

首先還是需要建立一個 HTML 文件用來做測試。

<html><body><div class="ecopyramid"> <ul id="producers"> <li class="producerlist">  <div class="name">plants</div>  <div class="number">100000</div> </li> <li class="producerlist">  <div class="name">algae</div>  <div class="number">100000</div> </li> </ul> <ul id="primaryconsumers"> <li class="primaryconsumerlist">  <div class="name">deer</div>  <div class="number">1000</div> </li> <li class="primaryconsumerlist">  <div class="name">rabbit</div>  <div class="number">2000</div> </li> </ul> <ul id="secondaryconsumers"> <li class="secondaryconsumerlist">  <div class="name">fox</div>  <div class="number">100</div> </li> <li class="secondaryconsumerlist">  <div class="name">bear</div>  <div class="number">100</div> </li> </ul> <ul id="tertiaryconsumers"> <li class="tertiaryconsumerlist">  <div class="name">lion</div>  <div class="number">80</div> </li> <li class="tertiaryconsumerlist">  <div class="name">tiger</div>  <div class="number">50</div> </li> </ul></div></body></html>

我們可以通過 find() 方法來獲得 <ul> 標簽,默認情況下會得到第一個出現的。接著再獲取 <li> 標簽,默認情況下還是會得到第一個出現的,接著獲得 <div> 標簽,通過輸出內容來驗證是否獲取了第一個出現的標簽。

from bs4 import BeautifulSoupwith open('search.html','r') as filename: soup = BeautifulSoup(filename,'lxml')first_ul_entries = soup.find('ul')print first_ul_entries.li.div.string

find() 方法具體如下:

find(name,attrs,recursive,text,**kwargs) 

正如上代碼所示,find() 方法接受五個參數:name、attrs、recursive、text 和 **kwargs 。name 、attrs 和 text 參數都可以在 find() 方法充當過濾器,提高匹配結果的精確度。

搜索標簽

除了上面代碼的搜索 <ul> 標簽外,我們還可以搜索 <li> 標簽,返回結果也是返回出現的第一個匹配內容。

tag_li = soup.find('li')# tag_li = soup.find(name = "li")print type(tag_li)print tag_li.div.string            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 昌乐县| 台南市| 惠水县| 盘山县| 古田县| 庄浪县| 麻江县| 闻喜县| 潞西市| 泰安市| 台东县| 和田县| 马公市| 扶风县| 汶川县| 武义县| 呼伦贝尔市| 正宁县| 饶平县| 玉山县| 家居| 康定县| 普洱| 介休市| 宁南县| 阳原县| 永春县| 浠水县| 炉霍县| 昌平区| 鹿泉市| 乐安县| 康平县| 搜索| 富平县| 电白县| 定结县| 张家港市| 汉阴县| 游戏| 新巴尔虎左旗|