Python抓取網(wǎng)頁內(nèi)容應用代碼分析
我們今天將會通過這篇文章,為大家詳細介紹一下Python抓取網(wǎng)頁內(nèi)容的兩種不同方法。大家可以以此為參考對象,在實際應用中選擇一種適合自己的應用方式來幫助我們完成實際開發(fā)中的需求。
Python抓取網(wǎng)頁內(nèi)容方法一、用urllib2/sgmllib包,將目標網(wǎng)頁的所有URL列出。
- import urllib2
 - from sgmllib import SGMLParser
 - class URLLister(SGMLParser):
 - def reset(self):
 - SGMLParser.reset(self)
 - self.urls = []
 - def start_a(self, attrs):
 - href = [v for k, v in attrs if k=='href']
 - if href:
 - self.urls.extend(href)
 - f = urllib2.urlopen("http://www.donews.com/")
 - if f.code == 200:
 - parser = URLLister()
 - parser.feed(f.read())
 - f.close()
 - for url in parser.urls: print url
 
Python抓取網(wǎng)頁內(nèi)容方法二、用python調(diào)用IE抓取目標網(wǎng)頁(Require win32com, pythoncom)的所有圖像的url和大小
- import win32com.client, pythoncom
 - import time
 - ie = win32com.client.DispatchEx('InternetExplorer.Application.1')
 - ie.Visible = 1
 - ie.Navigate("http://news.sina.com.cn")
 - while ie.Busy:
 - time.sleep(0.05)
 - doc = ie.Document
 - for i in doc.images:
 - print i.src, i.width, i.height
 
這種方法可以利用IE本身的Javascript. DHTML的支持,來做自動提交Form,和處理Javascript。
以上就是我們?yōu)榇蠹医榻B的Python抓取網(wǎng)頁內(nèi)容的兩種不同的方法。
【編輯推薦】















 
 
 







 
 
 
 