程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 更多關於編程 >> Python下載懶人圖庫JavaScript特效

Python下載懶人圖庫JavaScript特效

編輯:更多關於編程

       本文給大家分享的是使用Python 爬蟲抓取懶人圖庫的JS腳本特效模板的代碼,使用了第三方庫gevent來實現,有需要的小伙伴可以參考下。

      這是一個簡單的Python腳本,主要從懶人圖庫下載JavaScript特效模板,在腳本中使用了gevent這個第三方庫,使用的時候需要先安裝。

      ?

    1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 #!/usr/bin/python # -*- coding: utf-8 -*-   import urllib,os,sys import gevent,re from gevent import monkey from bs4 import BeautifulSoup gevent.monkey.patch_socket()   ''' Description:Python 爬蟲抓取懶人圖庫的JS腳本模板 Author:admin Create-Date:2015-05-25 Version:1.0 '''   HTTP_URL = 'http://www.lanrentuku.com%s' DOWNLOAD_URL = HTTP_URL[:-2] + '/js/d%szip' reg=r'd{1,}.+'   def encode(text): return text.encode("utf8")   def createDirectory(curPath): myPath = os.path.join(getSubDirectory(), u'JS代碼模板') if not os.path.exists(myPath): os.mkdir(myPath) return os.path.join(myPath, curPath)   def getSubDirectory(): return os.getcwd()   def schedule(a, b, c): per = 100.0 * a * b / c if per > 100 : per = 100 sys.stdout.write('%.1f%%r' % per) sys.stdout.flush()   def geturllist(url): url_list = {} html = urllib.urlopen(url) content = html.read() html.close() # 用BeautifulSoup解析 decodeHtml = BeautifulSoup(content) try: aTags = decodeHtml.find_all('div', {'class':'list-pngjs'})[0].find_all('a') except IndexError, e: print e aTags = None # 獲取鏈接地址和標題 if aTags is not None: for a_tag in aTags: url_list[HTTP_URL % a_tag.get('href')] = a_tag.get_text() return url_list   def download(down_url): try: m=re.search(reg,down_url[0]) name = DOWNLOAD_URL % m.group(0) urllib.urlretrieve(name,createDirectory(down_url[1] + name[-4:]),schedule) except Exception, e: print e.message   def getpageurl(xUrl): # 進行列表頁循環 return [xUrl % page for page in xrange(1,49)]   if __name__ == '__main__': jobs = [] pageurl = getpageurl('http://www.lanrentuku.com/js/p%s.html') # 爬取所有鏈接 for i in pageurl: for k in geturllist(i).items(): jobs.append(gevent.spawn(download, k)) gevent.joinall(jobs)

      以上所述就是本文的全部內容了,希望大家能夠喜歡。

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved