• 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()
  • 相关阅读:
    二叉排序树
    安全的终止线程的两种方法
    图的广度优先遍历(BFS)
    图的深度优先遍历(DFS)
    volatile的应用
    二叉树的遍历
    Java-反射
    Java--泛型
    单例模式
    剑指Offer--对称二叉树
  • 原文地址:https://www.cnblogs.com/jinjidedale/p/6762896.html
Copyright © 2020-2023  润新知