Commit 657b74f2 authored by 胡小根's avatar 胡小根

coding

parent a690295a
# -*- coding: utf-8 -*-
import codecs
import io
import os
import re
import sys
import shutil
reload(sys)
sys.setdefaultencoding('utf-8')
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
def get_related_imgs(src_dir=None, filename=None):
......@@ -17,17 +16,22 @@ def get_related_imgs(src_dir=None, filename=None):
:param filename:
:return:
"""
pattern = re.compile(r"(.*)(\.jpg|\.jpeg|\.JPEG|\.png|\.JPG|\.PNG)")
pattern = re.compile(r"(.*)(\.jpg|\.jpeg|\.JPEG|\.png|\.JPG|\.PNG|\.tif|\.TIF|\.gif|\.GIF)")
m = pattern.match(filename)
if len(m.groups()) < 2:
print 'not image file'
group_set = m.groups()
if len(group_set) < 2:
print(filename + u'not image file')
imgs = []
for s in ['45x45', '100x100', '150x150', '300x215', '300x300', '400x400', '550x500', '600x429', '700x340', '768x550']:
new_file = m.group()[0] + '-' + s + m.group()[1]
for s in ['45x45', '100x100', '150x150', '300x215', '300x225', '300x300', '400x400', '550x500', '600x429', '700x340', '768x550', '768x576']:
new_file = group_set[0] + '-' + s + group_set[1]
print(u"new_file: " + new_file)
if os.path.exists(src_dir + '/' + new_file):
imgs.append(new_file)
else:
print("file not exist")
return imgs
......@@ -43,18 +47,20 @@ def process(csv=None, src_dir=None, dst_dir=None):
count = 0
for line in f:
filename = line[1:-2]
print u"文件:%s" % filename.encode('utf-8')
print(filename)
if os.path.exists(src_dir + '/' + filename):
shutil.move(src_dir + '/' + filename, dst_dir + '/' + filename)
count += 1
print count
files = get_related_imgs(src_dir=src_dir, filename=filename)
for file in files:
shutil.move(src_dir + '/' + file, dst_dir + '/' + file)
print(count)
else:
print 'file not exist'
print('file not exist')
files = get_related_imgs(src_dir=src_dir, filename=filename)
for file in files:
print(file)
count += 1
shutil.move(src_dir + '/' + file, dst_dir + '/' + file)
if __name__ == '__main__':
print sys.argv[1]
process(csv=sys.argv[1], src_dir=sys.argv[2], dst_dir=sys.argv[3])
\ No newline at end of file
# -*- coding: utf-8 -*-
import codecs
import io
import os
import re
import sys
import shutil
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
def process(src_dir=None, dst_dir=None):
"""
根据csv文件清单,将一个目录中的文件移到另外一个目录中
:param csv:
:param src_dir:
:param dst_dir:
:return:
"""
count = 0
for f in os.listdir(src_dir):
pattern = re.compile(r".*-\d{2,4}x\d{2,4}(\.jpg|\.jpeg|\.JPEG|\.png|\.JPG|\.PNG)")
m = pattern.match(f)
if not m:
continue
# print(f, m.string)
if f != m.string:
continue
print(f)
shutil.move(src_dir + '/' + f, dst_dir + '/' + f)
count += 1
print(count)
if __name__ == '__main__':
process(src_dir=sys.argv[1], dst_dir=sys.argv[2])
\ No newline at end of file
# -*- coding: utf-8 -*-
import codecs
import io
import os
import re
import sys
import shutil
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
def get_related_imgs(src_dir=None, filename=None):
"""
得到类似 xxxx-300x300.jpg这样的图片文件名
:param src_dir:
:param filename:
:return:
"""
pattern = re.compile(r"(.*)(\.jpg|\.jpeg|\.JPEG|\.png|\.JPG|\.PNG|\.tif|\.TIF|\.gif|\.GIF)")
m = pattern.match(filename)
group_set = m.groups()
if len(group_set) < 2:
print(filename + u'not image file')
imgs = []
for s in ['45x45', '100x100', '150x150', '300x215', '300x225', '300x300', '400x400', '550x500', '600x429', '700x340', '768x550', '768x576']:
new_file = group_set[0] + '-' + s + group_set[1]
print(u"new_file: " + new_file)
if os.path.exists(src_dir + '/' + new_file):
imgs.append(new_file)
else:
print("file not exist")
return imgs
def process(csv=None, src_dir=None, dst_dir=None):
"""
将一个目录中的文件移到另外一个目录中(除csv中的外)
:param csv:
:param src_dir:
:param dst_dir:
:return:
"""
with codecs.open(csv, 'rb', 'utf-8') as f:
count = 0
src_file_count = 0
remain_files = []
for line in f:
filename = line[1:-2]
remain_files.append(filename)
print(len(remain_files))
for f in os.listdir(src_dir):
src_file_count += 1
print(u"list file: " + f)
print(src_file_count)
pattern = re.compile(r"(.*)(\.jpg|\.jpeg|\.JPEG|\.png|\.JPG|\.PNG|\.tif|\.TIF|\.gif|\.GIF)")
m = pattern.match(f)
if not m:
print("m is None")
continue
group_set = m.groups()
if len(group_set) < 2:
print(filename + u'not image file')
continue
print(f not in remain_files)
if f not in remain_files:
print(f)
shutil.move(src_dir + '/' + f, dst_dir + '/' + f)
count += 1
print(count)
if __name__ == '__main__':
process(csv=sys.argv[1], src_dir=sys.argv[2], dst_dir=sys.argv[3])
\ No newline at end of file
# -*- coding: utf-8 -*-
import codecs
import io
import os
import re
import sys
import shutil
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf-8')
def process(src_dir=None, dst_dir=None):
"""
根据csv文件清单,将一个目录中的文件移到另外一个目录中
:param csv:
:param src_dir:
:param dst_dir:
:return:
"""
count = 0
for f in os.listdir(src_dir):
pattern = re.compile(r"(.*)(-\d{1,2})(\.jpg|\.jpeg|\.JPEG|\.png|\.JPG|\.PNG)")
m = pattern.match(f)
if not m:
continue
# print(f, m.string)
if f != m.string:
continue
group_set = m.groups()
if len(group_set) < 3:
continue
print(f)
if os.path.exists(src_dir + '/' + group_set[0] + group_set[2]):
shutil.move(src_dir + '/' + f, dst_dir + '/' + f)
count += 1
print(count)
if __name__ == '__main__':
process(src_dir=sys.argv[1], dst_dir=sys.argv[2])
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment