selenium 保存頁面圖片


# python 3.5.2
from selenium import webdriver  
import time  
import urllib


# 爬取頁面地址  
url = "https://stocksnap.io/"

# 目標元素的xpath  
xpath = "/html/body/div[4]/div[3]/div[2]/div//a/img"

# 啟動Firefox瀏覽器  
driver = webdriver.Firefox()  

# 最大化窗口,因為每一次爬取只能看到視窗內的圖片  
driver.maximize_window()  

# 記錄下載過的圖片地址,避免重復下載  
img_url_dic = {}  

# 瀏覽器打開爬取頁面  
driver.get(url)  

# 模擬滾動窗口以瀏覽下載更多圖片  
pos = 0  
m = 0 # 圖片編號  
for i in range(10):  
    pos += i*500 # 每次下滾500  
    js = "document.documentElement.scrollTop=%d" % pos  
    driver.execute_script(js)  
    time.sleep(1)     

    for element in driver.find_elements_by_xpath(xpath):  
        img_url = element.get_attribute('src')  
        # 保存圖片到指定路徑  
        if img_url != None and not img_url in img_url_dic:

            img_url_dic[img_url] = ''  
            m += 1  
            ext = img_url.split('.')[-1]  
            filename = str(m) + '.' + ext  
            #保存圖片數據  
            data = urllib.request.urlopen(img_url).read()
            f = open('./van/' + filename, 'wb')
            f.write(data)  
            f.close()  
driver.close()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM