python自动化遍历显示图片

python遍历并显示图片需求

某个images文件下,放置有许多子文件夹,每个子文件夹中放置一些名字有规律的图片,
以数字递增命名,python遍历子文件夹,先显示0.jpg,然后随机显示其他图片。

/opt/images/
└── 1234
    ├── 0.jpg
    ├── 1.jpg
    └── 2.jpg

实现

# -*-coding:utf-8-*-

import os
import time
import subprocess
import random
import matplotlib.pyplot as plt
import matplotlib.image as mpimg

from PIL import Image

book_base_dir = '/opt/images/'

def list_dir_and_run(dr, func):
    print('list dir'+dr)
    for root,dirs,files in os.walk(dr):
        for d in dirs:
            #print(os.path.join(root, d));
            if None != func:
                func(os.path.join(root, d))

def list_file_and_run(dr, func):
    for root,dirs,files in os.walk(dr):
        for f in files:
            print(os.path.join(root,f));
            if None != func:
                func(f)

def get_file_from_dir(dr):
    for root,dirs,files in os.walk(dr):
        return files

def cover_name(dr):
    return dr + '/0.jpg'

def book_dir_have_cover(dr):
    return os.path.exists(cover_name(dr))

def show_img(img):
    print('show:' + img)
    #im = mpimg.imread(img)
    #plt.imshow(im)
    #plt.show()
    #return plt
    p = subprocess.Popen(["display", img])
    return p

def show_img_second(img, second):
    p = show_img(img)
    time.sleep(second)
    p.kill()

def show_one_book(bookDir):
    if not book_dir_have_cover(bookDir):
        print('no cover:' + cover_name(bookDir))
    #else:
        #print('have cover:' + cover_name(bookDir))

    cover = cover_name(bookDir)
    print('cover:' + cover) 
    show_img_second(cover, 5)

    pages = get_file_from_dir(bookDir)
    print('pages size:' + str(len(pages)))

    if len(pages) <= 0:
        print(bookDir+' page empty')
        return

    for i in range(10):
        pIndex = random.randint(0, len(pages)-1)
        show_img_second(bookDir+'/'+pages[pIndex], 5)

list_dir_and_run(book_base_dir, show_one_book)

作者:帅得不敢出门

Python app自动化遍历页面元素是指使用Python编写一个应用程序,通过自动化脚本来遍历页面中的元素,实现对页面的自动化操作。 要实现这个目标,通常需要使用Python中的一些库和工具,如Selenium和BeautifulSoup等。Selenium是一个用于网页测试的工具,它能够模拟用户在浏览器中的操作,包括点击、输入、选择等。BeautifulSoup是一个用于解析HTML和XML文档的库,它能够方便地提取网页中的元素信息。 首先,我们需要使用Selenium启动一个浏览器窗口,可以是Chrome、Firefox或者其他浏览器。然后,通过输入网址,访问目标页面。接下来,使用BeautifulSoup将页面源代码转化为可操作的对象。然后,使用Selenium和BeautifulSoup的方法和函数来遍历页面元素。 对于页面元素的遍历,有多种方法可以实现。一种常见的方式是使用XPath表达式来定位元素。XPath是一种用于在XML和HTML文档中选择节点的语言,它提供了很多灵活的选择方式,例如根据元素的ID、class、标签名等属性来选择元素。通过使用XPath表达式,我们可以很容易地定位到需要操作的页面元素。 在遍历页面元素的过程中,可以根据需求进行各种操作,例如点击按钮、输入文本、获取元素属性、截图等。可以将这些操作封装成函数或类,以便在需要的时候调用。 总之,使用Python编写的应用程序可以通过自动化脚本来遍历页面元素,实现对页面的自动化操作。这样可以提高效率、减少人工操作,适用于各种需要对页面进行批量操作的场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值