動漫電腦壁紙_爬蟲
阿新 • • 發佈:2018-09-15
很多 urn ima 列表 str wal port quest tps
無意中發現一個好網站,上面有很多美麗的動漫壁紙。
圖片太多,手動保存太慢,遂寫此程序。
源代碼:
import os #引入文件模塊 import re #正則表達式 import urllib.request #連接網頁並返回源碼 def open_url(url): try: req = urllib.request.Request(url) req.add_header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36") response = urllib.request.urlopen(req) # status_code = response.code html = response.read() return html except: print(url + " 404 網頁丟失,請稍後再試!") return 404 def main(): dongman_url = ‘https://www.dongmanxingkong.com/category/pic/wallpaper/page/1‘ dongman_url0 = ‘https://www.dongmanxingkong.com/category/pic/wallpaper/page/‘ add_urls = [] # 網頁列表 paper_urls = [] # 壁紙地址列表 img_num = 1 # 圖片序列號 os.chdir(‘PC_paper‘) # 轉移到圖片防止目錄 for i in range(1,4): # 搜集網頁 dongman_url = dongman_url0 + str(i) dongman_html = open_url(dongman_url) dongman_html= dongman_html.decode(‘utf-8‘) # 正則表達式匹配 add_url = re.findall(r‘class="post-title"><a href="([^"]+\.html)" title="【電腦壁紙】‘,dongman_html) print(len(add_url))# 輸出當前網頁 add_urls.extend(add_url) # 將子網頁添加到列表中 print(add_urls) # 輸出列表 print(len(add_urls)) # 列表長度 for i in add_urls: # 從網頁列表中搜集圖片源地址 print(i) paper_html = open_url(i) paper_html = paper_html.decode(‘utf-8‘) paper_url = re.findall(r‘電腦壁紙 " src="([^"]+\.jpg)"‘,paper_html) paper_urls.extend(paper_url) # 將所有地址存放到列表中 print(paper_url) print(paper_urls) print(‘共‘ + str(len(paper_urls)) + ‘張,現在開始下載圖片,請勿關閉程序!‘) # 開始保存圖片 for i in paper_urls: file_name = str(img_num) + ‘.jpg‘ img_html = open_url(i) with open(file_name, ‘wb‘) as f: f.write(img_html) img_num = img_num + 1 if __name__ == ‘__main__‘: main()
動漫電腦壁紙_爬蟲