這次爬取的目標是:美桌網首頁 > 桌面壁紙 > 卡通動漫 類別下的壁紙.
我們先隨機選取一個專輯來爬( http://www.win4000.com/wallpaper_detail_54520.html ).
后面再把整個卡通動漫類別的所有專輯的壁紙爬下來。
代碼如下:
import requests from bs4 import BeautifulSoup import os #爬取的網站:http://www.win4000.com/wallpaper_detail_54520.html def Get_image_url(url): #傳入頁面的URL,得到所有圖片所在的標簽和圖冊的名字,並返回 Res = requests.get(url) Soup = BeautifulSoup(Res.text,'lxml') Name = Soup.select('h1')[0].string Tag = 'img[title=\"' + Name + '\"]' Image = Soup.select(Tag) return Image,Name def Download_Image(Image_url): #傳入圖片的URL,將圖片保存在本地 Image = requests.get(Image_url,stream=True) #將鏈接的最后一個字符串最為圖片的名字 name = Image_url.split('/')[-1] #保存圖片 with open(name,'wb') as f: f.write(Image.content) def main(): #主調函數 url = "http://www.win4000.com/wallpaper_detail_54520.html" [Image,Name] = Get_image_url(url) #print(Name,Image) #保存當前目錄 path = os.getcwd() #創建保存圖片的目錄 os.mkdir(Name) os.chdir(path + '/' + Name) for I in Image: Download_Image(I['src']) #返回之前的目錄 os.chdir(path) if __name__ == '__main__': main()
注:如果是Windows下,將進入文件夾的命令 [ os.chdir(path + '/' + Name) ] 改為:os.chdir(path + '\\' + Name)