import win32com.client,time,win32inet,win32file,os
class ImgDownloader:
def __init__(self,url,dir):
self.__dir=dir
self.__ie=win32com.client.Dispatch('InternetExplorer.Application.1')
self.__ie.Navigate(url)
self.__ie.Visible = 1
self.__wait__()
def __wait__(self):
while self.__ie.Busy:
time.sleep(0.5)
def start(self):
self.__wait__()
imgs=self.__ie.Document.getElementsByTagName('img')
for i in range(imgs.length):
try:
cachInfo=win32inet.GetUrlCacheEntryInfo(imgs[i].src)
if cachInfo:
path=cachInfo['LocalFileName']
pathinfo=path.split('\\')
pathinfo.reverse()
filename=('[%d]' % i) + pathinfo[0]
win32file.CopyFile(path,os.path.join(self.__dir,filename),True)
except:
pass
def close(self):
self.__ie.Quit()
if __name__=='__main__':
d=ImgDownloader('http://www.sharejs.com','E:\\temp\\')
d.start()
d.close()
#//python/4438