小編給大家分享一下如何爬取動漫圖片,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討方法吧!
上街網(wǎng)站制作公司哪家好,找創(chuàng)新互聯(lián)建站!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項目制作,到程序開發(fā),運(yùn)營維護(hù)。創(chuàng)新互聯(lián)建站自2013年創(chuàng)立以來到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運(yùn)維經(jīng)驗,來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選創(chuàng)新互聯(lián)建站。
話不多說,直接上完整代碼
import requests as r import re import os import time file_name = "動漫截圖" if not os.path.exists(file_name): os.mkdir(file_name) for p in range(1,34): print("--------------------正在爬取第{}頁內(nèi)容------------------".format(p)) url = 'https://www.acgimage.com/shot/recommend?page={}'.format(p) headers = {"user-agent" : "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36"} resp = r.get(url, headers=headers) html = resp.text images = re.findall('data-original="(.*?)" ', html) names =re.findall('title="(.*?)"', html) #print(images) #print(names) dic = dict(zip(images, names)) for image in images: time.sleep(1) print(image, dic[image]) name = dic[image] #name = image.split('/')[-1] i = r.get(image, headers=headers).content try: with open(file_name + '/' + name + '.jpg' , 'wb') as f: f.write(i) except FileNotFoundError: continue
先導(dǎo)入要使用的庫
import requests as r import re import os import time
然后去分析要去爬的網(wǎng)址: 動漫截圖網(wǎng)
下圖是網(wǎng)址的內(nèi)容:
好了 url已經(jīng)確定
下面去尋找headers
找到下面是代碼展示
url = 'https://www.acgimage.com/shot/recommend?page={}'.format(p) headers = {"user-agent" : "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/80.0.3987.162 Safari/537.36" }
然后檢索要爬的圖片內(nèi)容
從上圖就可以找到圖片的位置:data-origina=后面的內(nèi)容
以及圖片的名字:title=后面的內(nèi)容
然后用正則表達(dá)式re來檢索就行了
images = re.findall('data-original="(.*?)" ', html) names =re.findall('title="(.*?)"', html)
最后將其保存就好了
i = r.get(image, headers=headers).content with open(file_name + '/' + name + '.jpg' , 'wb') as f: f.write(i)
然后將page后面的數(shù)字改動就可以跳到相應(yīng)的頁面
換頁的問題也就解決了
or p in range(1,34): url = 'https://www.acgimage.com/shot/recommend?page={}'.format(p)
以及將爬到的圖片放到自己建立的文件zh
使用了os庫
file_name = "動漫截圖" if not os.path.exists(file_name): os.mkdir(file_name)
看完了這篇文章,相信你對如何爬取動漫圖片有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!