用python批量转换图片

需求是这样的,由于现在相机像素都很高,拍出来的照片很大,上传到网上相册太慢,于是要先转下大小,之前都是直接在网上搜图片处理的软件,后来想了一下,既然会编程,这种需求完全可以自己动手搞。

python的图片处理爽歪歪,几行代码搞定,这里用的是pillow库。

下面上代码。

#coding=utf-8
from PIL import Image#需要pillow库
import glob, os
in_dir ='tmp_photo'#源图片目录
out_dir = in_dir+'_out'#转换后图片目录
percent = 0.4#缩放比例
if not os.path.exists(out_dir): os.mkdir(out_dir)

#图片批处理
def main():
    for files in glob.glob(in_dir+'/*'):
        filepath,filename = os.path.split(files)
        im = Image.open(files)
        w,h = im.size
        im = im.resize((int(w*percent), int(h*percent)))
        im.save(os.path.join(out_dir,filename))

if __name__=='__main__':
    main()
时间: 2024-12-22 04:41:49

用python批量转换图片的相关文章

Python 批量修改图片格式和尺寸

公司的一个项目要求把所有4096x4096的图片全部转化成2048x2048的图片,这种批量转换图片大小的软件网上很多,我的同事原来使用的美图看看的批量转换,但是稍微有点麻烦,每次还需要指定要转换的图片的输入路径和输出路径,而且每次都只能处理一个文件夹,很繁琐,于是我想到了万能的Python,然后写了一个脚本来批量处理图片,同一个根目录下的所有文件夹的子文件等的图片全部会处理掉. 代码中还加入了很多的异常捕获机制和提示,希望对大家有帮助. 备注: 1.导入了PIL库,是处理图片用的,很强大: 2

Python批量修改图片格式和尺寸

Python批量修改图片格式和尺寸 备注: 1.导入了PIL库,是处理图片用的,很强大; 2.导入了的win32库,是判断隐藏文件用的,我们的项目需要删除隐藏文件,不需要的可以直接找到删除. 3.导入send2trash库,是把删除的文件放进垃圾箱,而不是永久删除,这个我只是防止删除有用的文件而搞得,有点严谨了是吧,不需要的可以删掉啊. 4.我这个脚本是Python2.7编写的,但是在处理中文编码的时候非常恶心,尽管最后被我解决了,这个解决的方法,我随后会再单独写一篇,但是此刻我是建议大家不要用

Python 批量修改图片exif属性

一共两个文件 config.ini //放配置文件 exif.py   //主程序文件 config.ini 文件源码 [global] Artist = www.blmm.com ;作者 DateTimeOriginal = now ;时间(now为当前时间,如指定时间则格式为:2017:04:09 14:13:22) Software = Adobe Photoshop CS6 Windows ;程序名称 exif.py 文件源码 #ecoding:utf-8 import pyexiv2

用python批量下载图片

一 写爬虫注意事项 网络上有不少有用的资源, 如果需要合理的用爬虫去爬取资源是合法的,但是注意不要越界,前一阶段有个公司因为一个程序员写了个爬虫,导致公司200多个人被抓,所以先进入正题之前了解下什么样的爬虫是违法的: 如果爬虫程序采集到公民的姓名.身份证件号码.通信通讯联系方式.住址.账号密码.财产状况.行踪轨迹等个人信息,并将之用于非法途径的,则肯定构成非法获取公民个人信息的违法行为.除此之外,根据相关规定,对于违反国家有关规定,向他人出售或者提供公民个人信息,情节严重的,窃取或者以其他方法

Python 批量下载图片示例

使用Python find函数和urllib下载图片. #!/usr/bin/env python import time import urllib i = 0 url = ['']*10 name = ['']*10 con = urllib.urlopen('http://www.ithome.com/html/bizhi/164396.htm').read() src = con.find(r'/newsuploadfiles') end = con.find(r'.jpg',src)

python 批量更换图片格式脚本

问题:将某文件下的所有jpg的图片更换为png的图片 简单的实现: # -*- coding:utf-8 -*- from os.path import splitext import glob from PIL import Image def get_all_file(filename): files = glob.glob(filename) return files def to_ather_file(files, type): for jpg in files: im = Image.

python批量下载图片的三种方法

一是用微软提供的扩展库win32com来操作IE: win32com可以获得类似js里面的document对象,但貌似是只读的(文档都没找到). 二是用selenium的webdriver: selenium则提供了Chrome,IE,FireFox等的支持,每种浏览器都有execute_script和find_element_by_xx方法,可以方便的执行js脚本(包括修改元素)和读取html里面的元素.不足是selenium只提供对python2.6和2.7的支持. 三是用python自带的

python批量给图片添加log

直接上代码 from PIL import Image import os all_path=[] dirName = os.getcwd() file_dir = os.path.join(dirName,'file_log') #创建目录保存处理后的图片 try: os.mkdir('file_log') except FileExistsError: print('dir Exists ') #获取当前目录下所有的jpeg格式文件路径 for root, dirs, files in os

python 批量修改图片大小

一个文件夹下面有好多图片格式是jpg大小是1920*1080,把它们处理成1280*720并按原先图片的名保存在另一路径下这里首先要找到给定路径下所有的图片文件,然后在修改图片文件的大小,这里用到PIL和glob两个库: # -*- coding: utf-8 -*- import os import glob from PIL import Image import os.path '''修改图片文件大小jpgfile:图片文件:savedir:修改后要保存的路径''' def convert