一、Beautiful Soup簡介
網(wǎng)絡(luò)數(shù)據(jù)挖掘指的是從網(wǎng)站中獲取數(shù)據(jù)的過程,數(shù)據(jù)挖掘技術(shù)可以讓我們從網(wǎng)站世界中收集大量有價(jià)值的數(shù)據(jù)。
Beautiful Soup是一個(gè)Python庫,可以從HTML或XML文件中獲取數(shù)據(jù),利用它你可以做很多事情,比如你可以持續(xù)解析某個(gè)商品的最新價(jià)格,以便跟蹤價(jià)格的波動(dòng)情況。
二、Beautiful Soup安裝
安裝Beautiful Soup
pip3 install beautifulsoup4
檢驗(yàn)是否安裝成功
from bs4 import BeautifulSoup
三、創(chuàng)建一個(gè)Beautiful Soup對(duì)象
四、查找內(nèi)容
find()方法
在find()方法中傳入節(jié)點(diǎn)名,例如ul,這樣就可以獲取第一個(gè)匹配的ul節(jié)點(diǎn)的內(nèi)容,例如:
找到ul節(jié)點(diǎn)后,通過觀察html可以得知,ul下有2個(gè)li,每個(gè)li下有2個(gè)div,則通過student_entries.li可以獲取第一個(gè)li節(jié)點(diǎn)的數(shù)據(jù),繼續(xù)通過student_entries.li.div可以獲取第一個(gè)li下第一個(gè)div的數(shù)據(jù),例如:
繼續(xù)通過div.string可以獲取div的內(nèi)容:
使用正則表達(dá)式查找:
find()方法支持根據(jù)正則表達(dá)式查找內(nèi)容,例如:
find_all()方法
find()方法返回第一個(gè)匹配的內(nèi)容,find_all()方法會(huì)返回所有匹配的內(nèi)容列表,例如上面的根據(jù)正則表達(dá)式查找郵箱地址,將find()方法換成find_all()方法,則會(huì)返回所有匹配成功的內(nèi)容:
find_parent()方法
find_parent()方法往上查找內(nèi)容,例如,從第一個(gè)li節(jié)點(diǎn)上使用find_parent()方法,可以獲取父節(jié)點(diǎn)的內(nèi)容:
find_next_sibling()方法
sibling是兄弟姐妹的意思,find_next_sibling()方法獲取下一個(gè)同級(jí)別的兄弟節(jié)點(diǎn),例如:
其它方法還有很多,例如:
find_next()方法
find_all_next()方法
find_previous_sibling()方法
find_all_previous()方法
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
