python读取vivo手机截图,将满屏图片文件移动别的路径

问题之初

在这里插入图片描述

python读取vivo手机截图,
将满屏图片文件移动别的路径

在这里插入图片描述
好多这样的图片,占用手机大量的内存,食之无味弃之可惜!那么会复制粘贴👀代码的我们我们今天就把这些图片筛选清理掉。

这段代码

原有逻辑的基础上,加入了一些有趣的注释,以提升代码的可读性和娱乐性。希望您喜欢这个可爱又有趣的版本!

from PIL import Image  # 导入一个能处理图片的库
import os  # 导入操作系统模块
import shutil  # 导入用于移动文件的库image_path = input("请输入图片路径:")  # 提示用户输入图片路径try:image = Image.open(image_path)  # 打开指定路径的图片width, height = image.size  # 获取图片的宽度和高度print("图片尺寸大小:{}x{}".format(width, height))  # 输出图片尺寸信息,告诉用户有多大
except FileNotFoundError:print("找不到指定的图片文件。")  # 如果找不到文件,就跟用户开个玩笑说找不到了source_folder = '/storage/emulated/0/Pictures/'  # 原始文件夹路径
target_folder = '/storage/emulated/0/Pictures/图片要删除/'  # 目标文件夹路径# 创建目标文件夹(如果不存在),告诉用户我们会在哪放被移除的图片
if not os.path.exists(target_folder):os.makedirs(target_folder)print("目标文件夹已创建,准备将相同尺寸的图片移动到这里~")for filename in os.listdir(source_folder):  # 遍历原始文件夹中的所有文件file_path = os.path.join(source_folder, filename)  # 文件的完整路径if os.path.isfile(file_path):  # 如果是文件而不是文件夹try:image = Image.open(file_path)  # 再次打开文件,准备获取尺寸if image.size == (width, height):  # 如果和用户输入的图片尺寸一样shutil.move(file_path, target_folder)  # 将文件移到目标文件夹print("找到一张和指定图片尺寸相同的图片,已经移动到目标文件夹了~")except:pass  # 不处理无法打开的文件print("任务完成!希望您喜欢这段可爱优雅诙谐机智的代码~")

这个完整的代码可以直接复制粘贴到Python环境中,然运行。
在这个过程中,请将image_pathsource_folder变量的值替换为您使用的路径。

第2种方法

哎呀,手机📱在充电!
在这里插入图片描述

from PIL import Image  # 导入PIL库,用于处理图片
import os  # 导入os库,用于操作文件和目录
import shutil  # 导入shutil库,用于移动文件
from tqdm import tqdm  # 导入tqdm库,用于显示进度条# 读取输入图片的尺寸
image_path = input("请提供可爱的图片:")
if not os.path.exists(image_path):image_path = "/storage/emulated/0/Pictures/Screenshots/Screenshot_20231005_1 30732.jpg"if not os.path.exists(image_path):print("找不到可爱么文件,请重新输入地址。")exit()try:with Image.open(image_path) as img:width, height = img.sizeprint(f"输入图片的尺寸:{width}x{height},非常可爱优雅!")
except FileNotFoundError:print("找不到指定的图片文件,请重新输入路径。")exit()# 读取并创建源文件夹和目标文件夹
source_folder = input("请输入一张可爱图片的源文件夹路径:")
if not os.path.exists(source_folder):source_folder = "/storage/emulated/0/Pictures/Screenshots"if not os.path.exists(source_folder):print("找不到源文件夹,请检查路径是否正确。")exit()target_folder = input("请输入一个要移动可爱尺寸图片的目标地址:")
if not os.path.exists(target_folder):target_folder = "/storage/emulated/0/Pictures/图片要删除"if not os.path.exists(target_folder):os.makedirs(target_folder)print("目标文件夹已成功创建!")# 遍历源文件夹,查找所有与输入图片尺寸相同的美丽图片,并移动到目标文件夹中
moved_count = 0
for root, dirs, files in tqdm(os.walk(source_folder), desc='正在搜寻“可爱尺寸”的图片', unit="张"):for filename in files:filepath = os.path.join(root, filename)try:with Image.open(filepath) as img:if img.size == (width, height):# 如果图片尺寸相同,则将它移动到目标文件夹中shutil.move(filepath, os.path.join(target_folder, filename))moved_count += 1except Exception as e:print(f"哎呀,发生了一个小错误:{str(e)}")passprint(f"已成功移动 {moved_count} 张美丽的图片到目标文件夹!请欣赏它们的优雅姿态。")

图片

在这里插入图片描述
在这里插入图片描述

直接回车

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/149804.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

【C++设计模式之原型模式:创建型】分析及示例

简介 原型模式(Prototype Pattern)是一种创建型设计模式,它允许通过复制已有对象来生成新的对象,而无需再次使用构造函数。 描述 原型模式通过复制现有对象来创建新的对象,而无需显式地调用构造函数或暴露对象的创建…

Fiddle日常运用手册(3)-对移动端产品进行数据接口抓包

一般如果在做安卓移动端产品测试的时候,一般不像WEB端产品,可以直接进行F12进行接口日志查看开发预留的打印信息,将会影响测试人员的问题定位精准度以及效率。 这里,我们就介绍一下使用Fiddle进行移动端产品的抓包教程。 一、pc端…

JavaAPI---replace

package daysreplace;public class ReplaceTest {public static void main(String[] args) {String str "wwxhhhhhhhhhhh333";System.out.println("替换前的字符串" str);String newstr str.replace("333", "111");System.out.prin…

CRMEB商城源码开源标准版v5.2.0+后端+前端uni-app开源包安装教程

CRMEB打通版是一款全开源支持商用的PHP多语言商城系统,历经年时间匠心之作!系统采用前后端分离技术,基于TP6Uui-app框架开发;客户移动端采用uni-app开发,管理后台前端使用iviewUI开发。系统支持微信公众号端、微信小程序端、H5端、…

10链表-单链表构造LinkedList

目录 LeetCode之路——707. 设计链表 分析: Code: LeetCode之路——707. 设计链表 你可以选择使用单链表或者双链表,设计并实现自己的链表。 单链表中的节点应该具备两个属性:val 和 next 。val 是当前节点的值,n…

@SpringBootApplication剖析

一、前言 在SpringBoot项目中启动类必须加一个注解SpringBootApplication,今天我们来剖析SpringBootApplication这个注解到底做了些什么。 二、SpringBootApplication简单分析 进入SpringBootApplication源代码如下: 可以看出SpringBootApplication是…

el-date-picker增加默认值 修改样式

预期效果 默认是这样的 但希望是直接有一个默认的当天日期,并且字体颜色啥的样式也要修改(在这里假设今天是2023/10/6 功能实现 踩了坑挺多坑的,特此记录 官方文档 按照官方的说明,给v-model绑定一个字符串就可以了 在j…

关联规则挖掘(下):数据分析 | 数据挖掘 | 十大算法之一

⭐️⭐️⭐️⭐️⭐️欢迎来到我的博客⭐️⭐️⭐️⭐️⭐️ 🐴作者:秋无之地 🐴简介:CSDN爬虫、后端、大数据领域创作者。目前从事python爬虫、后端和大数据等相关工作,主要擅长领域有:爬虫、后端、大数据…

uniapp 实现地图头像上的水波纹效果

最近实现了uniapp 地图头像水波纹的效果,话不多说,先来看看视频效果吧:链接 在这里具体的代码就不放出来了,还是利用了uniapp的 uni.createAnimation 方法,因为cover-view 不支持一些css 的动画效果,所以这…

文举论金:非农到来!黄金原油全面走势分析策略独家指导

市场没有绝对,涨跌没有定势,所以,对市场行情的涨跌平衡判断就是你的制胜法宝。欲望!有句意大利谚语:让金钱成为我们忠心耿耿的仆人,否则,它就会成为一个专横跋扈的主人。空头,多头都…

24 mysql all 查询

前言 这里主要是 探究一下 explain $sql 中各个 type 诸如 const, ref, range, index, all 的查询的影响, 以及一个初步的效率的判断 这里会调试源码来看一下 各个类型的查询 需要 lookUp 的记录 以及 相关的差异 此系列文章建议从 mysql const 查询 开始看 测试表结构…

基于可解释性特征矩阵与稀疏采样全局特征组合的人体行为识别

论文还未发表,不细说,欢迎讨论。 Title: A New Solution to Skeleton-Based Human Action Recognition via the combination usage of explainable feature extraction and sparse sampling global features. Abstract: With the development of deep …

集群服务器

文章目录 项目名:实现集群服务器技术栈通过这项目你学到(或者复习到)实现功能编码环境json环境muduo库boost库MySql数据库登录mysql:查看mysql服务开启了没有?mysql的服务器及开发包库chat,表 allgroup friend groupuser offlinemessage user…

记录本地部署Stable-diffusion所依赖的repositories和一些插件

今天按照其他文章的步骤拉取好了https://github.com/AUTOMATIC1111/stable-diffusion-webui后,点击webui-user.bat后发现,repositories和models还得慢慢拉取,好吧,GitHub Desktop,启动! BLIP: https://git…

vuejs中使用axios时如何追加数据

前言 在vuejs中使用axios时&#xff0c;有时候需要追加数据,比如,移动端下拉触底加载,分页加载,滑动滚动条,等等,这时候就需要追加数据了,下面我们来演示下. 代码演示 <template><div><div><el-button type"primary" click"handleBtnGetJ…

【设计模式】访问者模式

文章目录 1.访问者模式定义2.访问者模式的角色3.访问者模式实战案例3.1.场景说明3.2.UML类图3.3.代码实现 4.访问者模式优缺点5.访问者模式适用场景6.访问者模式总结 主页传送门&#xff1a;&#x1f481; 传送 1.访问者模式定义 访问者模式&#xff08;Visitor Pattern&#x…

cartographer-(0)-ubuntu(20.04)-环境安装

1.安装 ROS wiki.ros.org 1.1修改镜像源&#xff1a; 到网站上找与操作系统相匹配的镜像源 ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror # 默认注释了源码镜像以提高 apt update 速度&#xff0c;如有需要可自行取消注释 deb htt…

JavaScript系列从入门到精通系列第十六篇:JavaScript使用函数作为属性以及枚举对象中的属性

文章目录 前言 1&#xff1a;对象属性可以是函数 2&#xff1a;对象属性函数被称为方法 一&#xff1a;枚举对象中的属性 1&#xff1a;for...in 枚举对象中的属性 前言 1&#xff1a;对象属性可以是函数 对象的属性值可以是任何的数据类型&#xff0c;也可以是函数。 v…

去雨去雪去雾算法之本地与服务器的TensorBoard使用教程

在进行去雨去雾去雪算法实验时&#xff0c;需要注意几个参数设置&#xff0c;num_workers只能设置为0&#xff0c;否则会报各种稀奇古怪的错误。 本地使用TensorBoard 此外&#xff0c;发现生成的文件是events.out.tfevents格式的&#xff0c;查询了一番得知该文件是通过Tens…

云原生边缘计算KubeEdge安装配置

1. K8S集群部署&#xff0c;可以参考如下博客 请安装k8s集群&#xff0c;centos安装k8s集群 请安装k8s集群&#xff0c;ubuntu安装k8s集群 2.安装kubEedge 2.1 编辑kube-proxy使用ipvs代理 kubectl edit configmaps kube-proxy -n kube-system #修改kube-proxy#大约在40多行…