python爬蟲(chóng)beautifulsoup解析html方法
用BeautifulSoup 解析html和xml字符串
實(shí)例:
#!/usr/bin/python# -*- coding: UTF-8 -*-from bs4 import BeautifulSoupimport re#待分析字符串html_doc = '''<html><head> <title>The Dormouse’s story</title></head><body><p class='title aq'> <b> The Dormouse’s story </b></p><p class='story'>Once upon a time there were three little sisters; and their names were <a rel='external nofollow' id='link1'>Elsie</a>, <a rel='external nofollow' id='link2'>Lacie</a> and <a rel='external nofollow' id='link3'>Tillie</a>; and they lived at the bottom of a well.</p><p class='story'>...</p>'''# html字符串創(chuàng)建BeautifulSoup對(duì)象soup = BeautifulSoup(html_doc, ’html.parser’, from_encoding=’utf-8’)#輸出第一個(gè) title 標(biāo)簽print soup.title#輸出第一個(gè) title 標(biāo)簽的標(biāo)簽名稱(chēng)print soup.title.name#輸出第一個(gè) title 標(biāo)簽的包含內(nèi)容print soup.title.string#輸出第一個(gè) title 標(biāo)簽的父標(biāo)簽的標(biāo)簽名稱(chēng)print soup.title.parent.name#輸出第一個(gè) p 標(biāo)簽print soup.p#輸出第一個(gè) p 標(biāo)簽的 class 屬性?xún)?nèi)容print soup.p[’class’]#輸出第一個(gè) a 標(biāo)簽的 href 屬性?xún)?nèi)容print soup.a[’href’]’’’soup的屬性可以被添加,刪除或修改. 再說(shuō)一次, soup的屬性操作方法與字典一樣’’’#修改第一個(gè) a 標(biāo)簽的href屬性為 http://www.baidu.com/soup.a[’href’] = ’http://www.baidu.com/’#給第一個(gè) a 標(biāo)簽添加 name 屬性soup.a[’name’] = u’百度’#刪除第一個(gè) a 標(biāo)簽的 class 屬性為del soup.a[’class’]##輸出第一個(gè) p 標(biāo)簽的所有子節(jié)點(diǎn)print soup.p.contents#輸出第一個(gè) a 標(biāo)簽print soup.a#輸出所有的 a 標(biāo)簽,以列表形式顯示print soup.find_all(’a’)#輸出第一個(gè) id 屬性等于 link3 的 a 標(biāo)簽print soup.find(id='link3')#獲取所有文字內(nèi)容print(soup.get_text())#輸出第一個(gè) a 標(biāo)簽的所有屬性信息print soup.a.attrsfor link in soup.find_all(’a’): #獲取 link 的 href 屬性?xún)?nèi)容 print(link.get(’href’))#對(duì)soup.p的子節(jié)點(diǎn)進(jìn)行循環(huán)輸出 for child in soup.p.children: print(child)#正則匹配,名字中帶有b的標(biāo)簽for tag in soup.find_all(re.compile('b')): print(tag.name)
爬蟲(chóng)設(shè)計(jì)思路:
詳細(xì)手冊(cè):
https://www.crummy.com/software/BeautifulSoup/bs4/doc.zh/
到此這篇關(guān)于python爬蟲(chóng)beautifulsoup解析html方法 的文章就介紹到這了,更多相關(guān)beautifulsoup解析html內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. vue使用moment如何將時(shí)間戳轉(zhuǎn)為標(biāo)準(zhǔn)日期時(shí)間格式2. bootstrap select2 動(dòng)態(tài)從后臺(tái)Ajax動(dòng)態(tài)獲取數(shù)據(jù)的代碼3. js select支持手動(dòng)輸入功能實(shí)現(xiàn)代碼4. php redis setnx分布式鎖簡(jiǎn)單原理解析5. 《Java程序員修煉之道》作者Ben Evans:保守的設(shè)計(jì)思想是Java的最大優(yōu)勢(shì)6. CSS3中Transition屬性詳解以及示例分享7. Python數(shù)據(jù)相關(guān)系數(shù)矩陣和熱力圖輕松實(shí)現(xiàn)教程8. 如何在PHP中讀寫(xiě)文件9. java加載屬性配置properties文件的方法10. 什么是Python變量作用域
