日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
講述面向?qū)ο蟮恼Z(yǔ)言——Python語(yǔ)言

Python語(yǔ)言確實(shí)是一種十分精彩又強(qiáng)大的語(yǔ)言,它合理地結(jié)合了高性能與使得編寫程序簡(jiǎn)單有趣的特色,看完本文你肯定有不少收獲,希望本文能教會(huì)你更多東西。

對(duì)搜索引擎、文件索引、文檔轉(zhuǎn)換、數(shù)據(jù)檢索、站點(diǎn)備份或遷移等應(yīng)用程序來(lái)說(shuō),經(jīng)常用到對(duì)網(wǎng)頁(yè)(即HTML文件)的解析處理。事實(shí)上,通過Python語(yǔ)言提供的各種模塊,我們無(wú)需借助Web服務(wù)器或者Web瀏覽器就能夠解析和處理HTML文檔。

本文上篇中,我們介紹了一個(gè)可以幫助簡(jiǎn)化打開位于本地和Web上的HTML文檔的Python模塊。在本文中,我們將論述如何使用Python模塊來(lái)迅速解析在HTML文件中的數(shù)據(jù)。從而處理特定的內(nèi)容,如鏈接、圖像和Cookie等。同時(shí)還會(huì)介紹如何規(guī)范HTML文件的格式標(biāo)簽,Python語(yǔ)言還有一個(gè)非常有用的模塊HTMLParser。

該模塊使我們能夠根據(jù)HTML文檔中的標(biāo)簽來(lái)簡(jiǎn)潔、高效地解析HTML文檔。所以,在處理HTML文檔的時(shí)候,HTMLParser是最常用的模塊之一。處理HTML文檔的時(shí)候,我們常常需要從其中提取出所有的鏈接。使用HTMLParser模塊后,這項(xiàng)任務(wù)將變得易如反掌。

首先,我們需要定義一個(gè)新的HTMLParser類,以覆蓋handle_starttag()方法,我們將使用這個(gè)方法來(lái)顯示所有標(biāo)簽的HRef屬性值。定義好新的HTMLParser類之后,需要?jiǎng)?chuàng)建一個(gè)實(shí)例來(lái)返回Python語(yǔ)言。然后,就可以使用urllib.urlopen(url)打開HTML文檔并讀取該HTML文件的內(nèi)容了。

為了解析HTML文件的內(nèi)容并顯示包含其中的鏈接,可以使用read()函數(shù)將數(shù)據(jù)傳遞給HTMLParser對(duì)象。HTMLParser對(duì)象的feed函數(shù)將接收數(shù)據(jù),并通過定義的HTMLParser對(duì)象對(duì)數(shù)據(jù)進(jìn)行相應(yīng)的解析。

需要注意,如果傳給HTMLParser的feed()函數(shù)的數(shù)據(jù)不完整的話,那么不完整的標(biāo)簽會(huì)保存下來(lái),并在下一次調(diào)用feed()函數(shù)時(shí)進(jìn)行解析。當(dāng)HTML文件很大,需要分段發(fā)送給解析器的時(shí)候,這個(gè)功能就會(huì)有用武之地了。下面是一個(gè)具體的例子。

 
 
 
  1.  import HTMLParser  
  2.  
  3.   import urllib  
  4.  
  5.   import sys  
  6.  
  7.   #定義HTML解析器  
  8.  
  9.   class parseLinks(HTMLParser.HTMLParser):  
  10.  
  11.   def handle_starttag(self, tag, attrs):  
  12.  
  13.   if tag == 'a':  
  14.  
  15.   for name,value in attrs:  
  16.  
  17.   if name == 'href':  
  18.  
  19.   print value  
  20.  
  21.   print self.get_starttag_text()  
  22.  
  23.   #創(chuàng)建HTML解析器的實(shí)例  
  24.  
  25.   lParser = parseLinks()  
  26.  
  27.   #打開HTML文件  
  28.  
  29.   lParser.feed(urllib.urlopen( \  
  30.  
  31.   "http://www.python.org/index.html").read())  
  32.  
  33.   lParser.close() 

上述代碼的運(yùn)行結(jié)果太長(zhǎng),在此省略,您可以自己運(yùn)行代碼試試。

【編輯推薦】

  1. 漫談Python 源代碼編制技巧
  2. 簡(jiǎn)單易于操作的Python 工具詳解
  3. 有關(guān)Python應(yīng)用領(lǐng)域進(jìn)行說(shuō)明介紹
  4. PythonAndroid面向?qū)ο蟮木幊獭狿ython應(yīng)用程序
  5. 如何使用Python模塊解析配置文件 ?

分享名稱:講述面向?qū)ο蟮恼Z(yǔ)言——Python語(yǔ)言
分享URL:http://www.5511xx.com/article/dhpeoio.html