ååã倧éã®ç»åãã¡ã€ã«ã«æå³ã®ããååãä»ããŠé£çªãªããŒã ãè¡ãããã°ã©ã ãäœã£ãŠã¿ãããšã¯èšãããã£ãããªãªãžãã«ã®ãªããŒã ããŒã«ãäœãã®ãªããããèªåã®æ¥åã«ãã£ããããç¬èªã®æ©èœãä»ãå ããããšæãã ãããä»åã¯ããã¡ã€ã«ã®æ¥ä»ããã¡ã€ã«ã®å 容ã«å¿ããŠãèªåã§ãã¡ã€ã«åãã€ããããã°ã©ã ãäœã£ãŠã¿ããã author=ã¯ãžã©é£è¡æº
ãã¡ã€ã«ã®æŽæ°æ¥æãé£çªã«å ãã
ååãåºæ¬çãªãã¡ã€ã«ã®é£ç¶ãªããŒã ã®æ¹æ³ã玹ä»ãããããã§ãååã®ããã°ã©ã ãæ¹è¯ããŠããã¡ã€ã«ã®æŽæ°æ¥æããã¡ã€ã«åã«å«ããããã°ã©ã ãäœã£ãŠã¿ãããåãã¡ã€ã«ã«ã¯ããã¡ã€ã«ã®ããŒã¿ãã®ãã®ã«å ããŠãäœææ¥æãæŽæ°æ¥æãªã©ã®ä»å æ å ±ãèšé²ãããŠãããèªåãªããŒã ã§ããããå©çšããªãæã¯ãªãã
ããã§ã¯ãåçã®æŽçãç®çã«ããŠãã(æŽæ°æ¥ä»)-(æ®åœ±å Žæ)-(é£çª).jpgãã®ãããªåœ¢ã«ãã¡ã€ã«åã倿ŽããŠã¿ããããšã¯èšããæ®åœ±å ŽæãååŸããããã°ã©ã ã¯è€éã«ãªã£ãŠããŸãã®ã§ãæ®åœ±å Žæã®æ å ±ã ãã¯æå ¥åãããã®ãšãããã
import glob, os, time
# ãã¡ã€ã«ã®äžèЧãåæ --- (*1)
files = glob.glob("*.jpg")
# ç¹°ãè¿ããªããŒã ãã --- (*2)
for i, old_name in enumerate(files):
# ãã¡ã€ã«ã®æŽæ°æ¥æãåŸã --- (*3)
t = os.path.getmtime(old_name)
ts = time.strftime("%Y%m%d", time.localtime(t))
# ãã¡ã€ã«åãæ±ºå®ããŠæ¹å --- (*4)
new_name = "{0:s}-暪æµ-{1:03d}.jpg".format(ts, i + 1)
os.rename(old_name, new_name)
print(old_name + "â" + new_name)
äžèšã®ããã°ã©ã ããrename_date.pyããšããååã§ä¿åããã³ãã³ãã©ã€ã³ããã以äžã®ããã«å®è¡ãããšããã¡ã€ã«åãäžæ°ã«å€æŽãããããªããmacOS/Linuxã§ã¯ãpythonãpython3ã«å€æŽããŠå®è¡ããŠã¿ããã
python rename_date.py
ããã°ã©ã ãå®è¡ãããšã以äžã®ããã«ãã¡ã€ã«åã倿Žãããã
ããã°ã©ã ãèŠãŠã¿ããã(ïŒ1)ã®éšåã§ã¯ããã¡ã€ã«ã®äžèЧãåæãããããã§ã¯ãã«ã¬ã³ããã£ã¬ã¯ããªã«ããæ¡åŒµåã".jpg"ã®ãã¡ã€ã«å šãŠãåæããŠããã(ïŒ2)ã®éšåã§ã¯ãåæãããã¡ã€ã«äžèЧãç¹°ãè¿ãåŠçããããã«foræ§æãèšè¿°ããŠããã(ïŒ3)ã®éšåã§ã¯ããã¡ã€ã«ã®æŽæ°æ¥æãåŸããæŽæ°æ¥æãåŸãã«ã¯ãos.path.getmtime()ãå©çšããããããŠã(*4)ã®éšåã§ã¯ãæ°ãããã¡ã€ã«ã®ååãæ±ºå®ããå®éã«ãªããŒã ããã
ã¡ãªã¿ã«ããã¡ã€ã«ã®äœææ¥æã§ã¯ãªãæŽæ°æ¥æãå©çšããŠããã®ã«ã¯çç±ãããããã¡ã€ã«ã®äœææ¥æã¯ããã®ãã¡ã€ã«ãäœæãããæ¥æã ããã®ãããåçãæ®åœ±ããæç¹ã§ãäœææ¥æãšæŽæ°æ¥æã¯å šãåãæ¥æãšãªãããããããã¡ã€ã«ãPCã«ã³ããŒããå Žåããã¡ã€ã«ã®äœææ¥æã¯ããã¡ã€ã«ãã³ããŒããæ¥æãšãªããã€ãŸããPCã«ã³ããŒããæç¹ã§ããã¡ã€ã«ã®äœææ¥æãšæ®åœ±æ¥æã¯ç°ãªããã®ãšãªã£ãŠããŸããããã§ãæŽæ°æ¥æãå©çšããã°ãå®éã®åçæ®åœ±æ¥æãšãªãå¯èœæ§ãé«ãã
ãªããæŽæ°æ¥æã§ã¯ãªããæ¢ããŠäœææ¥æã䜿ãããå Žåãããã ããã以äžã«ãã¡ã€ã«ã®ä»å æ å ±ãåŸã颿°ããŸãšããŠããã
| 颿°å | æå³ |
|---|---|
| os.path.getctime() | ãã¡ã€ã«ã®äœææ¥æ |
| os.path.getmtime() | ãã¡ã€ã«ã®æŽæ°æ¥æ |
| os.path.getatime() | ãã¡ã€ã«ãžã®ã¢ã¯ã»ã¹æ¥æ |
| os.path.getsize() | ãã¡ã€ã«ã®ãµã€ãº |
Wordãã¡ã€ã«ã®å 容ã確èªããŠãªããŒã ããŠã¿ãã
次ã«ãã¡ã€ã«ã®å 容ã確èªããŠãªããŒã ããæ¹æ³ãèããŠã¿ããããã¡ã€ã«ã®å 容ã確èªããããã«ã¯ããã®ãã¡ã€ã«ãéããŠãå®éã«ãã®ãã¡ã€ã«ãã©ããªãã©ãŒãããã§ããã®ãã調ã¹ãå¿ èŠããããçŸå®çã«ããã¹ãŠã®ãã¡ã€ã«åœ¢åŒã«å¯Ÿå¿ããããšã¯é£ããã ããã
ããã§ãä»åã¯ãWordãã¡ã€ã«ã察象ã«ãWordã®åé ã®äžè¡ãåãåºããŠããã¡ã€ã«åã«ããŠã¿ãããã€ãŸããã(åé äžè¡)-(æŽæ°æ¥æ)-(é£çª).docxããšãã圢åŒã«ãªããŒã ããŠã¿ããã
ããã§Wordãã¡ã€ã«ãæäœããããã«ããpython-docxããšããã©ã€ãã©ãªãå©çšããŠã¿ããããã®ã©ã€ãã©ãªãå©çšãããšãWordãã€ã³ã¹ããŒã«ãããŠãªããŠããWordãã¡ã€ã«ãæäœã§ããããã«ãªããã³ãã³ãã©ã€ã³ããã以äžã®pipã³ãã³ããå®è¡ãããšãã©ã€ãã©ãªãã€ã³ã¹ããŒã«ã§ããã
# Windows/ Anacondaãã€ã³ã¹ããŒã«ããå Žå
pip install python-docx
# macOS / Linuxã®å Žå
pip3 install python-docx
ãããŠã以äžã®ããã°ã©ã ããrename_word.pyããšããååã§ä¿åãããã
import glob, os, time, re
from docx import Document
files = glob.glob("*.docx")
for i, old_name in enumerate(files):
# ãã¡ã€ã«ã®äœææ¥æãåŸã
t = os.path.getmtime(old_name)
ts = time.strftime("%Y%m%d", time.localtime(t))
# Wordã®äžè¡ç®ãåŸã
title = 'äžæ'
try:
doc = Document(old_name)
title = doc.paragraphs[0].text
title = re.sub(r'(\r|\n|\t|\s|\\|\/|\:|\;|\"|)', '', title)
except:
pass
# ãã¡ã€ã«åãæ±ºå®ããŠæ¹å
new_name = "{0}-{1}-{2:03d}.docx".format(title, ts, i + 1)
try:
os.rename(old_name, new_name)
print(old_name + "â" + new_name)
except:
print("ERROR: " + old_name + "â" + new_name)
ã³ãã³ãã©ã€ã³ããããã°ã©ã ãå®è¡ããŠã¿ããã(macOS/Linuxã®å Žåã¯ãpythonãpython3ã«çœ®ãæãããã)
python rename_word.py
å®è¡ãããšã次ã®ããã«Wordãã¡ã€ã«ã«ã¿ã€ãã«ãèšå®ãããã
ããã°ã©ã ã確èªããŠã¿ãããããã°ã©ã ã®(ïŒ1)ã®éšåã§ã¯ãå ã»ã©ãšåãããã«ãã¡ã€ã«ã®æŽæ°æ¥æãåŸãããããŠã(ïŒ2)ã®éšåã§ãWordãã¡ã€ã«ãéããããã«èšè¿°ãããŠããå 容ãååŸããããã®æãå é ã®ãã©ã°ã©ãã«æžãããŠããããã¹ãã ããåŸãã«ã¯ãdoc.paragraphs[0].textãã®ããã«èšè¿°ããããããŠã(ïŒ3)ã®éšåã§ãã¡ã€ã«åããªããŒã ããã
Pythonã«ã¯ãWordã®ä»ã«ããExcelããã®ä»ã®åœ¢åŒã®ãã¡ã€ã«ãæè»œã«èªã¿èŸŒãã©ã€ãã©ãªãè±å¯ã«ããã®ã§ãããããã©ã€ãã©ãªã䜿ãã°ãããè³¢ããªããŒã ããããŒã«ãäœãããšãã§ããã ããã
ãŸãšã
以äžãä»åã¯ãååã®é£çªãªããŒã ã®ããã°ã©ã ãæ¹è¯ããŠãããèªåã®èŠæã«æ·»ã£ããªããŒã ãè¡ãããã°ã©ã ã玹ä»ãããããããããã¡ã€ã«ã«ã©ã®ãããªååãä»ããã®ãã¯ããã®äººã®åæ§ã奜ã¿ãåæ ãããéšåã§ã¯ããããæ¥åã«ãããŠã¯ããåã¯äœã衚ããã®ç¶æ ã«ããŠããã®ãè¯ããçããªããããã¡ã€ã«ã®å 容ãæç¢ºã«åãããã¡ã€ã«åãä»ãããŠããã°ãæ¥åã®å¹çåã«ã€ãªããã ãããæ¬çš¿ãåèã«ããªãªãžãã«ã®ãªããŒã ããŒã«ãäœããæ¥åæ¹åã«å©çšããŠã¿ããã
èªç±åããã°ã©ããŒããããã¯ãã©ã«ãŠãããã°ã©ãã³ã°ã®æ¥œãããäŒããæŽ»åãããŠããã代衚äœã«ãæ¥æ¬èªããã°ã©ãã³ã°èšèªããªã§ããã ãããã¹ã鳿¥œããµã¯ã©ããªã©ã2001幎ãªã³ã©ã€ã³ãœãã倧è³å ¥è³ã2004幎床æªèžãŠãŒã¹ ã¹ãŒããŒã¯ãªãšãŒã¿èªå®ã2010幎 OSSè²¢ç®è ç« åè³ãæè¡æžãå€ãå·çããŠããã

