Python的魅力(一)抓取圖片


    衆所周知,Python語言作爲高級語言,越來越受歡迎。這完全取決於它無法抵擋的魅力:簡單、明確、優雅。

下面是Python實現的簡單功能:爬取圖片

首先,定義數據庫

import requests,os,shutil
from lxml import html
etree = html.etree

然後創建軟鏈接:

url = 'https://******'
responce = requests.get(url)
root = etree.HTML(responce.content)
big_list = root.xpath('//ul[@class="bzmenu"]/li/a')

爲方便查看,我們可以專門爲圖片創建一個文件夾

#爬取圖片全部放入同一文件夾
os.mkdir('圖')
os.chdir('圖')

下面,遍歷網頁網格信息,拿到我們想要圖片的地址

for big_cate in big_list:
    big_cate_src = big_cate.xpath('@href')[0]
    big_cate_alt = big_cate.xpath("text()")[0]
    big_cate_src = "https://www.ivsky.com" + big_cate_src
    os.mkdir(big_cate_alt)

接下來就是重中之重了,我們將抓取1到3頁的圖片

    #抓取1到3頁的圖片
    for page in range(1,3):
        big_src = big_cate_src+ 'index_%s.html' % page
        print(big_src)
        big_responce = requests.get(big_src)
        big_root = etree.HTML(big_responce.content)
        img_src = big_root.xpath('//ul[@class="ali"]/li/div/a/img/@src')
        img_alt = big_root.xpath('//ul[@class="ali"]/li/div/a/img/@alt')
        tuple_img = zip(img_alt, img_src)
        #圖片抓取
        for alt, src in tuple_img:
            src = 'https:' + src
            img_responce = requests.get(src)
            if '/' in alt:
                alt = alt.replace('/','-')
            flie = open('C:/Users/Administrator/Desktop/圖/' +big_cate_alt+'/'+ alt + '.jpg', 'wb')
            flie.write(img_responce.content)
            flie.close()
實測效果清晰明瞭,簡單大方,Python真的是太秀了!

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章