最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 網(wǎng)頁解析HTMLParse的實(shí)例詳解

 更新時(shí)間:2017年08月10日 09:24:09   作者:qindongliang1922  
這篇文章主要介紹了Python 網(wǎng)頁解析HTMLParse的實(shí)例詳解的相關(guān)資料,python里提供了一個(gè)簡(jiǎn)單的解析模塊HTMLParser類,使用起來也是比較簡(jiǎn)單的,解析語法沒有用到XPath類似的簡(jiǎn)潔模式,需要的朋友可以參考下

Python 網(wǎng)頁解析HTMLParse的實(shí)例詳解

使用python將網(wǎng)頁抓取下來之后,下一步我們就應(yīng)該解析網(wǎng)頁,提取我們所需要的內(nèi)容了,在python里提供了一個(gè)簡(jiǎn)單的解析模塊HTMLParser類,使用起來也是比較簡(jiǎn)單的,解析語法沒有用到XPath類似的簡(jiǎn)潔模式,但新手用起來還是比較容易的,看下面的例子:

現(xiàn)在一個(gè)模擬的html文件:

<html> <title id='main' mouse='你好'>我是標(biāo)題</title><body>我是內(nèi)容</body>  </html> 

需求是,提取出標(biāo)題的屬性值,以及內(nèi)容:

代碼如下:

import html.parser as h 
 
 
 
class MyHTMLParser(h.HTMLParser): 
  a_t=False 
  def handle_starttag(self, tag, attrs): 
    #print("開始一個(gè)標(biāo)簽:",tag) 
    print() 
    if str(tag).startswith("title"): 
      print(tag) 
      self.a_t=True 
      for attr in attrs: 
        print("  屬性值:",attr) 
 
  def handle_endtag(self, tag): 
    if tag == "title": 
      self.a_t=False 
      #print("結(jié)束一個(gè)標(biāo)簽:",tag) 
 
  def handle_data(self, data): 
    if self.a_t is True: 
      print("得到的數(shù)據(jù): ",data) 
 
 
 
p=MyHTMLParser() 
 
p.feed("<html> <title id='main' mouse='你好'>我是標(biāo)題</title><body>我是內(nèi)容</body>  </html>") 
 
p.close() 

運(yùn)行結(jié)果如下:

title 
  屬性值: ('id', 'main') 
  屬性值: ('mouse', '你好') 
得到的數(shù)據(jù): 我是標(biāo)題 

主要的技術(shù)就是繼承了HTMLParser類,然后重寫了里面的一些方法,來完成自己的業(yè)務(wù),從上面的代碼里,發(fā)現(xiàn)如果想獲取某個(gè)標(biāo)簽的內(nèi)容,還是比較麻煩的,當(dāng)然這是python里面最簡(jiǎn)單的html解析方式,還有很多其他組件,scrapy等等,里面支持Xpath路徑解析,使用起來非常簡(jiǎn)潔清爽。

解析代碼學(xué)會(huì)之后,我們就可以將使用urllib包,抓取到的數(shù)據(jù)交給htmlparser解析,從而提取出我們所需要的內(nèi)容。

以上就是Python 網(wǎng)頁解析HTMLParse的實(shí)例詳解,如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • Python獲取文件夾下的所有文件路徑小結(jié)

    Python獲取文件夾下的所有文件路徑小結(jié)

    在Python編程過程中,需要獲取某一個(gè)文件目錄下的所有文件,或獲取文件目錄下的所有指定后綴名的文件等,本文主要介紹了Python獲取文件夾下的所有文件路徑,感興趣的可以了解一下
    2023-10-10
  • Python httpx庫入門指南(最新推薦)

    Python httpx庫入門指南(最新推薦)

    Httpx 是一個(gè)用于發(fā)送 HTTP 請(qǐng)求的 Python 庫,它提供了簡(jiǎn)單易用的 API,可以輕松地發(fā)送 GET、POST、PUT、DELETE 等請(qǐng)求,并接收響應(yīng),下面介紹下Python httpx庫入門指南,感興趣的朋友一起看看吧
    2023-12-12
  • Python畫圖學(xué)習(xí)入門教程

    Python畫圖學(xué)習(xí)入門教程

    這篇文章主要介紹了Python畫圖的方法,結(jié)合實(shí)例形式分析了Python基本的線性圖、餅狀圖等繪制技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2016-07-07
  • 關(guān)于文件Permission denied解決方案(pip)

    關(guān)于文件Permission denied解決方案(pip)

    這篇文章主要介紹了文件Permission denied解決方案(pip),具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • 淺談python編譯pyc工程--導(dǎo)包問題解決

    淺談python編譯pyc工程--導(dǎo)包問題解決

    這篇文章主要介紹了python編譯pyc工程--導(dǎo)包問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Python3.5文件修改操作實(shí)例分析

    Python3.5文件修改操作實(shí)例分析

    這篇文章主要介紹了Python3.5文件修改操作,結(jié)合實(shí)例形式分析了Python3.5針對(duì)txt文本文件的讀寫、修改等相關(guān)操作技巧,需要的朋友可以參考下
    2019-05-05
  • 對(duì)python中UDP,socket的使用詳解

    對(duì)python中UDP,socket的使用詳解

    今天小編就為大家分享一篇對(duì)python中UDP,socket的使用詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python爬取cnvd漏洞庫信息的實(shí)例

    python爬取cnvd漏洞庫信息的實(shí)例

    今天小編就為大家分享一篇python爬取cnvd漏洞庫信息的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • python圖片二值化提高識(shí)別率代碼實(shí)例

    python圖片二值化提高識(shí)別率代碼實(shí)例

    這篇文章主要介紹了python圖片二值化提高識(shí)別率代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Python中NumPy的數(shù)組拆分

    Python中NumPy的數(shù)組拆分

    這篇文章主要介紹了Python中NumPy的數(shù)組拆分,我們使用array_split()分割數(shù)組,將要分割的數(shù)組和分割數(shù)傳遞給它,如果將一個(gè)數(shù)組拆分為 3 個(gè)數(shù)組,則可以像使用任何數(shù)組元素一樣從結(jié)果中訪問它們,需要的朋友可以參考下
    2023-07-07

最新評(píng)論

丘北县| 阿拉善盟| 长治市| 京山县| 浦城县| 南昌市| 河东区| 阳春市| 永城市| 出国| 汝南县| 广德县| 察隅县| 万荣县| 大方县| 巴青县| 永嘉县| 麻江县| 察隅县| 浪卡子县| 克山县| 黄山市| 宁乡县| 久治县| 高雄县| 积石山| 扶余县| 泰宁县| 德兴市| 霍山县| 牙克石市| 牡丹江市| 友谊县| 陵水| 庆阳市| 班玛县| 宁明县| 深水埗区| 鹰潭市| 砀山县| 洪洞县|