#-*- coding:utf-8 -*-
#file:GetImage.py
#
import Tkinter
import HTMLParser
import urllib
#創建URL解析類
class MyHTMLParser(HTMLParser.HTMLParser):
def __init__(self):
HTMLParser.HTMLParser.__init__(self)
self.gifs=[]
self.jpgs=[]
self.pngs=[]
def handle_starttag(self,tags,attrs):
if tags=='img':
for attr in attrs:
for t in attr:
if 'gif' in t:
self.gifs.append(t)
elif 'jpg' in t:
self.jpgs.append(t)
elif 'png' in t:
self.pngs.append(t)
else:
pass
def get_gifs(self):
return self.gifs
def get_jpgs(self):
return self.jpgs
def get_pngs(self):
return self.pngs
#創建組件
class Window:
def __init__(self, root):
self.root=root
self.label=Tkinter.Label(root,text='輸入URL:')
self.label.place(x=5,y=15)
self.entryUrl=Tkinter.Entry(root,width=30)
self.entryUrl.place(x=65,y=15)
self.get=Tkinter.Button(root,text='獲取圖片',command=self.Get)
self.get.place(x=280,y=15)
self.edit=Tkinter.Text(root,width=470,height=600)
self.edit.place(y=50)
def Get(self):
url=self.entryUrl.get() #獲取URL
page=urllib.urlopen(url) #打開URL
data=page.read() #讀取URL內容
parser=MyHTMLParser() #生成實例對象
parser.feed(data) #處理HTML數據
self.edit.insert(Tkinter.END,'=====GIF====\n')
#獲取gif圖片
gifs=parser.get_gifs()
for gif in gifs:
self.edit.insert(Tkinter.END,gif+'\n')
self.edit.insert(Tkinter.END,'============\n')
self.edit.insert(Tkinter.END,'=====JPG====\n')
#獲取jpg圖片
jpgs=parser.get_jpgs()
for jpg in jpgs:
self.edit.insert(Tkinter.END,jpg+'\n')
self.edit.insert(Tkinter.END,'============\n')
self.edit.insert(Tkinter.END,'=====PNG====\n')
#獲取png圖片
pngs=parser.get_pngs()
for png in pngs:
self.edit.insert(Tkinter.END,png+'\n')
self.edit.insert(Tkinter.END,'============\n')
page.close()
root=Tkinter.Tk()
window=Window(root)
root.minsize(600,480)
root.mainloop()
python處理HTML與XML之獲取頁面圖片地址
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.