精华内容
下载资源
问答
  • 假设我们要读取的文件夹下的图片命名如下: 现在需要按照图片的命名顺序逐个读取图片(即按照frame1.jpg,frame2.jpg,frame3.jpg,frame4.jpg,frame5.jpg顺序),通常情况下需要通过文件夹的路径将所有图片名放...

    假设我们要读取的文件夹下的图片命名如下:

     现在需要按照图片的命名顺序逐个读取图片(即按照frame1.jpg,frame2.jpg,frame3.jpg,frame4.jpg,frame5.jpg顺序),通常情况下需要通过文件夹的路径将所有图片名放入到一个列表中,如下imgList保存'E:\测试视频01'文件夹下所有图片的名称

    import os
    imgList = os.listdir('E:\测试视频01')
    print(imgList)
    

     imgList的内容如下,没有按序排列,

     对上一步的ingList进行排序:

    import os
    
    imgList = os.listdir('E:\测试视频01')
    imgList.sort(key=lambda x: int(x.replace("frame","").split('.')[0]))#按照数字进行排序后按顺序读取文件夹下的图片
    print(imgList)
    

    此时 imgList的内容如下,可以看到已经有序排列:

    再通过每张图片的文件名获得全路径:

    import os
    
    dir = 'E:\测试视频01'
    imgList = os.listdir(dir)
    print(imgList)
    imgList.sort(key=lambda x: int(x.replace("frame","").split('.')[0]))#按照数字进行排序后按顺序读取文件夹下的图片
    print(imgList)
    for count in range(0, len(imgList)):
        im_name = imgList[count]
        im_path = os.path.join(dir,im_name)
        print(im_path)

     

    展开全文
  • 一、批量创建文件夹 首先需要创建在一个文件夹下,批量创建多个文件夹,代码如下: import os import shutil count = len(os.listdir(LABLE_...base = 'E:/Python/' for i in range(1,count+1): file_name = ba...

    一、批量创建文件夹

    首先需要创建在一个文件夹下,批量创建多个文件夹,代码如下:

    import os
    import shutil
    
    count = len(os.listdir(LABLE_DIR))
    print("count=",count)
    #批量创建文件夹
    
    base = 'E:/Python/'
    for i in range(1,count+1):
        file_name = base + "rgb_"+str(i).zfill(4)+"_json"
        os.mkdir(file_name)

    base中是在哪个文件夹下创建多个文件夹的路径,根据自己需要更改,这时注意python中读取文件的错误:

    OSError: [Errno 22] Invalid argument:

    路径'E:/Python'或者"E:\\Python"

    file_name中是在base路径下创建文件夹的名称是什么。我的文件夹名为:

    rgb_0001_json

    rgb_0002_json,ect

    根据自己的需要可以更改。

    二、批量复制图片到不同文件夹下

    复制这里使用shutil.copy(),具体代码如下:

    count1 = os.listdir(imagefile)
    for n in range(1,len(count1)+1):
        print("n:",n)
        path = os.path.join(imagefile, count1[n-1])
        if os.path.isfile(path):
            file_total = 'E:/Python/'
            for j in count1:
                m = j[4:8]
                print("m=",m)
                if j.find('rgb_'+str(m)+'.jpg')!=-1:
                    print("j=",j)
                    shutil.copy(os.path.join(imagefile,j),os.path.join(file_total,'rgb_'+str(m).zfill(4)+'_json/'))

    imagefile中是图片的存储路径。

    三、实现结果

    可以将一个文件夹的图片,分别存入到指定路径下。

    展开全文
  • Python爬取图片命名

    千次阅读 2020-05-16 12:20:49
    话不多说,直接上代码。 方法一, # -*- coding:utf-8 -*- import re import requests ... #使用正则表达式 ... print('找到关键词:' + keyword + '的图片,现在开始下载图片...') for each in pic_url:

    话不多说,直接上代码。

    方法一,

    # -*- coding:utf-8 -*-
    import re
    import requests
    
    
    def dowmloadPic(html, keyword):
        #使用正则表达式
        pic_url = re.findall('"objURL":"(.*?)",', html, re.S)
        i = 1
        print('找到关键词:' + keyword + '的图片,现在开始下载图片...')
        for each in pic_url:
            print('正在下载第' + str(i) + '张图片,图片地址:' + str(each))
            try:
                pic = requests.get(each, timeout=10)
            except requests.exceptions.ConnectionError:
                print('【错误】当前图片无法下载')
                continue
    
            dir = 'E:/images/' + keyword + '_' + str(i) + '.jpg'
            fp = open(dir, 'wb')
            #requests.get返回response,response.content是内容,除了content还有header之类的
            fp.write(pic.content)
            fp.close()
            i += 1
    
    
    if __name__ == '__main__':
        word = input("Input key word: ")
        url = 'http://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=' + word + '&ct=201326592&v=flip'
        result = requests.get(url)
        dowmloadPic(result.text, word)
    

    方法2:wget方法

    # 导入requests包
    import requests
    import re, os,time
    def pictureload(res,word):
        #图片地址正则表达式,objURL为图片源代码(F12为html,源代码是网页右键检查)
        p=re.compile(r'"objURL":"(.*?)",')
        #图片地址放入列表中
        pic_url=p.findall(res)
        #定义wget路径
        WGET_EXE=r'E:\python\wget\wget.exe'
        i = 1
        print('找到关键词:' + word + '的图片,现在开始下载图片...')
        #循环下载图片并保存
        for pic in pic_url:
            print('正在下载第' + str(i) + '张图片,图片地址:' + str(pic))
            #wget下载图片并保存到特定目录中
            cmd=f'{WGET_EXE} -t1 -P e:\images {pic}'
            os.system(cmd)
            #except Exception as e:
            # except ConnectionError:
            #     print('【错误】当前图片无法下载')
            #     continue
            i+=1
    
    def func(img_path):
        #img_path = 'E:\images'
        imglist = os.listdir(img_path)
        j = 1
        for list in imglist:
            if list.endswith('.jpg'):
                # 原先的图片名字
                # src = os.path.join(os.path.abspath(img_path), list)
                src = os.path.join(img_path, list)
                # 重命名名字
                dst = os.path.join(img_path, 'G' + '_' + str(j) + '.jpg')
                j += 1
                # 图片dst替换src名字
                os.rename(src, dst)
    if __name__ == '__main__':
        word=input('请输入关键字:')
        file=input('请输入图片文件夹地址:')
        #访问网页地址
        url='https://image.baidu.com/search/index?tn=baiduimage&ipn=r&ct=201326592&cl=2&lm=-1&st=-1&fm=result&fr=&sf=1&fmq=1586055954565_R&pv=&ic=0&nc=1&z=&hd=&latest=&copyright=&se=1&showtab=0&fb=0&width=&height=&face=0&istype=2&ie=utf-8&sid=&word='+word
        #获取网页回复
        response=requests.get(url)
        # #返回了http响应消息体中的文本内容
        res=response.text
        pictureload(res,word)
        time.sleep(1)
        func(file)
    

    方法三:(亲测可用)

    ''' 爬取多张图片: 
    1 拿到目标url 
    2 拿到网页源代码 
    3 拿到图片的url 
    4 保存图片 '''
    
    #1 拿到目标ur for K in range(80):   #翻页抓取图片
        Y = K*60 #每页60张图片,自定义参数URL地址
        print(Y)
        url = 'https://image.baidu.com/search/flip?tn=baiduimage&ie=utf-8&word=%E8%AF%81%E4%BB%B6%E7%85%A7%E7%89%87&pn='+str(Y)+'&ct=&ic=0&lm=-1&width=0&height=0'
    #地址可以替换,此处为百度搜索——证件照
        print(url)
    
    
    #2 拿到网页源代码
    
        import requests
        headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36'}
        r = requests.get(url,headers=headers)
        ret = r.text
    
    #3 拿到图片url(在源代码内部查找图片url--> objURL)
    
        import re
        ## "objURL":"http://www.asunxf.com/public/uploads/images/149516208595569.jpg"
        ## 获得 "http://www.asunxf.com/public/uploads/images/149516208595569.jpg"  用分组() 且源代码中不需要考虑换行
        ## 用正则表达式匹配,查找规律: "objURL": "(.*?)" . 表示除换行符的任意字符、*表示出现0或多次、?表示出现0次或1次  这样就匹配了除换行符外所有字符
        result = re.findall('"objURL":"(.*?)"',ret)
        # print(result)
        ## 得到结果
        ## ['http://image.biaobaiju.com/uploads/20190519/21/1558273090-lIPSAHzKmv.jpg', 'http://a0.att.hudong.com/84/03/01300544405356150572030622083.jpg', 'http://www.asunxf.com/public/uploads/images/149516208595569.jpg', 'http://img.zcool.cn/community/017f7c5a5d7857a8012113c7328510.jpg@1280w_1l_2o_100sh.jpg', 'http://pic1.win4000.com/wallpaper/f/598a7f4fad5ae.jpg', 'http://img3.doubanio.com/view/photo/l/public/p2252763412.jpg', 'http://file05.16sucai.com/2015/0707/49983dadac864480481cc01e25e3575d.jpg', 'http://img6.android.d.cn/android/new/game_image/50/12650/banner.png', 'http://n.sinaimg.cn/front/197/w1080h717/20181130/iKSo-hpevhcm4232272.jpg', 'http://img3.redocn.com/tupian/20151026/maomideyangguangsenlin_5189304.jpg', 'http://img0.pconline.com.cn/pconline/1206/25/2836432_forests9_thumb.jpg', 'http://pic25.nipic.com/20121130/5252423_213434941000_2.jpg', 'http://img.sj33.cn/uploads/allimg/201103/20110316000243463.jpg', 'http://img.qumofang.com/813_20180312_route_FiCVlJ9FQqAJAg1DbUYUq7lZTNU-.jpg', 'http://img.08087.cc/uploads/20190909/19/1568027249-pTkLZKhPXd.jpg', 'http://spider.ws.126.net/0aee6495e82e07d1aeb060e435d8a7ad.jpeg', 'http://img.taopic.com/uploads/allimg/110802/9123-110P21QF150.jpg', 'http://img.zcool.cn/community/01e55355fa7cf732f875a132af9bd1.jpg@1280w_1l_2o_100sh.png', 'http://pic31.nipic.com/20130701/10717360_204504436110_2.jpg', 'http://s9.rr.itc.cn/r/wapChange/201512_19_15/a7b79m3219482356405.jpg', 'http://pic18.nipic.com/20111205/5252423_185743376000_2.jpg', 'http://img1.qunarzz.com/travel/d7/1610/3b/438bdbfe5e83b5.jpg_r_640x426x70_f2392c83.jpg', 'http://image.biaobaiju.com/uploads/20190508/18/1557312150-mYoXdPEgSU.jpg', 'http://youimg1.c-ctrip.com/target/tg/095/148/054/ab09325c778e46b6a62b23218788acd7.jpg', 'http://cdn03.pinkoi.com/pinkoi.magz/19l3A7KT/14462014846057.jpg', 'http://pic31.nipic.com/20130721/5252423_124454877000_2.jpg', 'http://pic1.win4000.com/wallpaper/c/547824e988085.jpg', 'http://pic36.nipic.com/20131211/10038431_153949508104_2.jpg', 'http://thumbs.dreamstime.com/x/%E6%A3%AE%E6%9E%97%E5%85%AC%E8%B7%AF-16197599.jpg', 'http://res.travel.ifeng.com/258272740c70de4d/2011/0823/ori_4e534cc1aaf2e.jpeg', 'http://img.zcool.cn/community/01a00055fb763332f875a132e1e113.jpg@2o.jpg', 'http://www.nh.gov.cn/picture/0/1705191056527188622.jpg', 'http://res.sgfb.sgxw.cn/a/10001/201903/bbe84e17fb1978925af5e9434f59eee9.jpeg', 'http://m.tuniucdn.com/fb2/t1/G1/M00/F4/AF/Cii9EFa_3qKIaxmTAAWuwx5nrSMAAB2MwOyTcgABa7b81_w500_h280_c1_t0.jpeg', 'http://pic1.win4000.com/wallpaper/2019-02-20/5c6ce5f1062f3.jpg', 'http://img.mp.itc.cn/upload/20161123/51a7ae9cfc5048ac96daf7b2716413fa_th.jpg', 'http://imgsrc.baidu.com/forum/pic/item/b7a3cb8065380cd78e9bd412a144ad345b8281a0.jpg', 'http://pic8.nipic.com/20100708/4807676_084921016169_2.jpg', 'http://www.gxly.gov.cn/upload/20141226/904c1dfc-2395-4f2c-a5e6-b49fc1da2ed6.JPG', 'http://pic115.huitu.com/res/20190325/1674814_20190325000633031050_1.jpg', 'http://img.zcool.cn/community/01452957721f5d0000018c1b6cbb9d.jpg', 'http://images.quanjing.com/east005/high/east-ep-a91-3939666.jpg', 'http://pic.16pic.com/00/29/49/16pic_2949714_b.jpg', 'http://pic124.huitu.com/res/20190627/1417944_20190627221005895070_1.jpg', 'http://b-ssl.duitang.com/uploads/item/201311/12/20131112215456_i4dSx.jpeg', 'http://img.jk51.com/img_jk51/337453995.jpeg', 'http://pic31.nipic.com/20130719/5252423_184439567000_2.jpg', 'http://img.redocn.com/sheying/20150310/yuyucangcangdesenlin_3986481.jpg', 'http://img.zcool.cn/community/01bf71554436620000019ae9f11d1e.jpg', 'http://5b0988e595225.cdn.sohucs.com/images/20181114/16f65de97952477b8726ff4a45cbb7b5.jpeg', 'http://pic119.huitu.com/res/20190505/1703346_20190505065556339011_1.jpg', 'http://00.minipic.eastday.com/20181106/20181106194814_c67f74e7a6c92201a15e555c4079e563_1.jpeg', 'http://img8.zol.com.cn/bbs/upload/22651/22650732.jpg', 'http://www.917ii.com/bbs/data/attachment/forum/201405/15/095501ym332aq7w611617a.jpg', 'http://img.redocn.com/sheji/20150731/qingxinsenlinshipinsucai_4754086.jpg', 'http://pic27.nipic.com/20130311/12089017_151412092000_2.jpg', 'http://www.znweiye.cc/data/attachment/forum/201907/16/140559tpcwwdswtbftyksp.jpg', 'http://images4.c-ctrip.com/target/t1/tuangou/046/437/935/56508bb40b564607baac4157cb0a2654_720_480.jpg', 'http://img.sccnn.com/bimg/338/23251.jpg', 'http://thumbs.dreamstime.com/z/%E6%A3%AE%E6%9E%97-16021609.jpg']
    
        # 4 保存图片
        print('找到关键词:人脸的图片,现在开始下载图片...')
        for each in result:
            print('正在下载第' + str(Y) + '张图片,图片地址:' + str(each))
            try:
                pic = requests.get(each, timeout=10)
            except requests.exceptions.ConnectionError:
                print('【错误】当前图片无法下载')
                continue
    
            dir = 'E:/images/ '+ str(Y) + '.jpg'    #E盘新建images文件夹,按照序号命名图片
            print(dir)
            fp = open(dir, 'wb')
            # requests.get返回response,response.content是内容,除了content还有header之类的
            fp.write(pic.content)
            fp.close()
            Y += 1
    

    `

    展开全文
  • (1) 处理成 # -*- coding:utf8 -*- import os ...批量重命名文件夹中的图片文件 ''' def __init__(self): self.path = 'I:\\val' #要处理文件路径 def rename(self): filelist = os.list

    (1)

    将类似

    的图片处理成从agricultural0开始命名

    # -*- coding:utf8 -*-

    import os
    
    class BatchRename():
    
        def __init__(self):
            self.path = 'J:\Paper\Airport data sets' #要处理文件路径
    
        def rename(self):
            filelist = os.listdir(self.path)
            total_num = len(filelist)
            i = 0
            for item in filelist:
                if item.endswith('.tif'):
                    src = os.path.join(os.path.abspath(self.path), item)
                    dst = os.path.join(os.path.abspath(self.path),'agricultural'+str(i) + '.tif') #如果不需要图片命名不需要agricultural,则改为str(i) + '.tif
                    
                    try:
                        os.rename(src, dst)
                        print 'converting %s to %s ...' % (src, dst)
                        i = i + 1
                    except:
                        continue
            print 'total %d to rename & converted %d jpgs' % (total_num, i)
    
    if __name__ == '__main__':
        
        demo = BatchRename()
        demo.rename()
    


    展开全文
  • 使用Python给自己的图片重新命名

    千次阅读 2019-07-17 21:59:56
    第一次发布类似文章,希望写的不好的地方... fileinfo = Fileinfo(r'E:\python\opencv_study\Group') #请忽视OpenCV fileinfo.change_all_name(fileinfo.getalldir()) 好了,快去找你的QQ聊天记录图片试试吧
  • 主要为大家详细介绍了python实现遍历文件夹图片并重命名,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
  • python中按照命名顺序读取图片

    千次阅读 2019-08-26 18:24:21
    path = "test1/" files = os.listdir(path) files.sort(key=lambda x: int(x.split('.')[0])) for filename in files: print(filename)
  • python批量命名照片的具体代码,供大家参考,具体内容如下 废话不多说,上效果图 全部代码 from tkinter import * import os #添加文件夹路径 def rename(): path =entry.get() filelist = os.listdir(path) #...
  • python图片命名的类别保存到相应的文件夹中
  • 答案【判断题】if语句与elif语句的使用没有本质的区别【单选题】下列Python赋值语句中不合法的是【填空题】两个集合,S1={1,2,5,6,7,9},S2={3,7,9} 则有:(1)S1|S2=_____________________; (2)S1&S2=_______...
  • 今天小编就为大家分享一篇python实现本地图片转存并重命名的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
  • 在批量重命名的时候,保存图片时,带有中文的字符会保存乱码。查阅资料后,找到解决方法。 import cv2 import os import numpy as np path = 'E:\\Personal\\Desktop\\rename\\zaian\\' names = os....
  • Python之遍历文件夹图片并重命名

    千次阅读 2018-07-02 11:00:32
    在做深度学习相关项目时,需要标注图片,筛选过后图片名字带有括号,显得比较乱,因此利用python进行统一规范重命名操作 实现方法是利用python的os模块对文件夹进行遍历(listdir),然后使用rename进行改名操作 ...
  • Python批量命名某目录下的所有图片名字1. 需求2. Python解决需求2.1 文件遍历的方法2.2 文件重命名2.3 需求分析2.4 Python代码实现2.5 程序的扩展3. 参考文献 1. 需求 在实验过程中,我们会拍摄很多照片,这时就会...
  • python 获取图片并自动命名保存

    千次阅读 2018-07-30 17:09:00
    mingcheng = '%s' % ims['alt'] # 图片命名所用,alt内容为图片名称 s = '%s' % ims['src'] # 获取字符 截取相应的名称及格式 geshi = s.split('.')[-1] # 图片命名所用,获取图片的格式 ming=mingcheng+'.'+...
  • Python循环命名

    千次阅读 2020-06-23 14:51:23
    文章主要参考:python3 关于循环命名(一), 感谢作者! 一步到位地理解: # 推荐,好记 for i in range(3): locals()['a'+str(i)] = i # 等效于: # 下面方法可能更学术一点? for i in range(3): exec( f'a%s={i...
  • Python批量爬取图片并以特定名称命名 有时因工作或兴趣,需要从网上爬取大量图片并重命名,数据少了还好说,要是成百上千,/(ㄒoㄒ)/~~ 程序员最大的动力就是懒呀! 几行代码,解放双手,机器该做的事就交给机器。 ...
  • Python3.5 微信图片-日期命名

    千次阅读 2017-07-18 18:03:39
    #Version:python3.5.2 #Tools:Pycharm ''' 本脚本主要功能:将微信手工保存的图片文件名称改成带日期的规范名称 ''' __author__ = "Colby" import os,sys,time,datetime,re def rm(dir,fileNameSource,...
  • 问题描述: 1、(先添加时间戳,再复制移动,两个文件... r"/home/kangle/result") 以上这篇Python 某个文件名添加时间戳的方法就是小编分享大家的全部内容了,希望能大家一个参考,也希望大家多多支持脚本之家。
  • python实现本地图片转存并重命名

    千次阅读 2018-04-12 11:02:24
    //有1-22个文件夹,各文件夹下有Detect_0文件夹,此文件夹下有source与mask文件夹,目的是将需要获取图片的 文件夹下的图片复制到新的文件夹下并按顺序重命名import os import shutil //删除之前文件夹并新建空...
  • 图片和标注进行重新命名并保存到新的文件夹 imgpath = './img' new_imgpath = './new_img' jsonpath = './gt' new_jsonpath = './new_json' j = 0 #文件名起始 for root, dirs, files in os.walk(imgpath): for ...
  • python脚本】提供图片url,批量下载命名图片 一、背景  收到一个小需求,某项目会上传了很多图片,产品想看看用户上传的图片都是啥。  线上业务表里存了图片url和一些用户ID信息,需要将图片都下载...
  • 标题为了成批地图像增加水印,我们这里用到了枕头模块。它的英文名为pillow。安装它的方式为用cmd命令打开DOS提示符窗口,然后...为了能给图片增加水印,我们需要导入 Image类 、ImageFont类、ImageDraw类、ImageS...
  • 采集网站的过程采集了大量图片,有时需要给图片编号,于是用python写了个批量处理函数 import os j=1 for i in os.listdir(): if(i[i.rfind("."):]==".jpg"): os.rename(i,str(j)+".jp...
  • python转换图片大小,后保存图片,并给图片重命名(更换图片的后缀名) 将tiff 后缀的图片,转化大小后,保存图片,并将命名为jpg格式
  • python 文件随机命名,自己需要随机放歌的时候写的。
  • 将下列路径'C:\\Users\\Administrator\\Desktop\\图片集合'替换成自己的路径即可。# -*- coding:utf8 -*-import osclass BatchRename(): ''' 批量重命名文件夹中的图片文件 ''' def __init__(self): self.path ...
  • 解决Python3不能读取中文命名图片   今天在读取"浙K05521_262094.jpg"时,报错“error: (-215) dims <= 2 && step[0] > 0 in function cv::Mat::locateROI”。查阅...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 40,950
精华内容 16,380
关键字:

python给图片命名

python 订阅