beautifulsoup解析頁(yè)面
創(chuàng)新互聯(lián)公司主營(yíng)南岔網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,重慶APP軟件開(kāi)發(fā),南岔h5微信小程序搭建,南岔網(wǎng)站營(yíng)銷(xiāo)推廣歡迎南岔等地區(qū)企業(yè)咨詢(xún)from bs4 import BeautifulSoup soup = BeautifulSoup(htmltxt, "lxml") # 三種裝載器 soup = BeautifulSoup("", "html.parser") ### 只有起始標(biāo)簽的會(huì)自動(dòng)補(bǔ)全,只有結(jié)束標(biāo)簽的會(huì)自動(dòng)忽略 ### 結(jié)果為: soup = BeautifulSoup("", "lxml") ### 結(jié)果為: soup = BeautifulSoup("", "html5lib") ### html5lib則出現(xiàn)一般的標(biāo)簽都會(huì)自動(dòng)補(bǔ)全 ### 結(jié)果為: # 根據(jù)標(biāo)簽名、id、class、屬性等查找標(biāo)簽 ### 根據(jù)class、id、以及屬性alog-action的值和標(biāo)簽類(lèi)別查詢(xún) soup.find("a",class_="title",id="t1",attrs={"alog-action": "qb-ask-uname"})) ### 查詢(xún)標(biāo)簽內(nèi)某屬性的值 pubtime = soup.find("meta",attrs={"itemprop":"datePublished"}).attrs['content'] ### 獲取所有class為title的標(biāo)簽 for i in soup.find_all(class_="title"): print(i.get_text()) ### 獲取特定數(shù)量的class為title的標(biāo)簽 for i in soup.find_all(class_="title",limit = 2): print(i.get_text()) ### 獲取文本內(nèi)容時(shí)可以指定不同標(biāo)簽之間的分隔符,也可以選擇是否去掉前后的空白。 soup = BeautifulSoup('The Dormouses story
The Dormouses story
', "html5lib") soup.find(class_="title").get_text("|", strip=True) #結(jié)果為:The Dormouses story|The Dormouses story ### 獲取class為title的p標(biāo)簽的id soup.find(class_="title").get("id") ### 對(duì)class名稱(chēng)正則: soup.find_all(class_=re.compile("tit")) ### recursive參數(shù),recursive=False時(shí),只find當(dāng)前標(biāo)簽的第一級(jí)子標(biāo)簽的數(shù)據(jù) soup = BeautifulSoup('abc','lxml') soup.html.find_all("title", recursive=False)