# 매월 벽지를 자동으로 바꾸고 싶다! 그 2
매월 벽지를 자동으로 바꾸고 싶다! 그 2
전회의 기사로 매월 자동으로 벽지를 바꾸는 프로그램을 만들어 보았습니다만, PC를 재기동하면 벽지가 리셋 되어 버렸기 때문에, 여러가지 시행착오해 보았습니다.
개선점
프로그램을 매일 실행하면 매일 벽지 다운로드하게 되어, 그것은 조금 넌센스라고 생각하기 때문에 if文
를 사용해 조건 분기해 보았습니다.
또한 파이썬 환경이 없어도 움직이도록 exe形式
로 변환하여 움직이기로 결정했습니다.
조건 분기
if문을 사용해, 지정된 격납처에 「wallpaper_yyyymm_1.jpg」라고 하는 파일이 없는지를 판정.
프로그램 실시 월의 이미지 파일이 없으면 배경 화면을 다운로드합니다.
우선, 실시일의 일자를 취득해, 파일명을 작성합니다. 이것은 이전과 동일합니다.
#--- import Today's date ---
dt_now = datetime.datetime.now()
print(dt_now.strftime('%Y/%m/%d'))
#--- path make ---
dst_path = r'C:\Users\ayk_f\wallpaper\wallpaper_'+dt_now.strftime('%Y%m')+'_1.jpg'
wname = 'wallpaper_'+dt_now.strftime('%Y%m')+'_1.jpg'
print('path: '+dst_path)
$ python wallpaper_v2.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
파일명을 만들 수 있었으므로 해당하는 파일명이 없는지를 판정해, 없는 경우만 벽지를 다운로드합니다.
is_file = os. path.isfile(dst_path)
print(is_file)
if is_file:
print(f"{wname} is a file.")
pass #なにもしない
else:
print(f"{wname} is a not file.")
os. path.isfile()
함수는 지정된 파일 이름이 존재하는 경우 True를 반환하는 함수 인 것 같습니다.
이번은 「지정한 디렉토리에 wallpaper_202109_1.jpg 가 존재하는 경우는 아무것도 하지 않는다, 존재하지 않는 경우는 다운로드한다」라고 하게 됩니다.pass
는 조건 분기의 결과가 아무것도 하지 않는 경우에 넣어 둘 필요가 있습니다.
이번에는 시험적으로 print
를 실행하고 있지만 실제로는 코멘트 아웃하기 위해 pass
를 넣고 있습니다.
참고로
이달의 벽지(wallpaper_202109_1.jpg)가 있을 때~~~ ! ! !
$ python wallpaper_v2.0.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
True
없을 때~~~~
$ python wallpaper_v2.0.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
False
이 재료가 하고 싶었을 뿐···(웃음)
없을 때(else시)에 배경화면을 다운로드하는 코드를 실행하고, 마지막으로 배경화면을 설정하는 코드를 실행하면 완성입니다.
벽지의 설정은 재기동시에 리셋 되어 버리므로, if문의 밖에 내놓아 둘 필요가 있습니다.
코드 exe 파일화
이 기사 대로 했습니다.
참고로 기록해 둡니다.
1. pyinstaller 설치
Python을 설치한 상태에서 pyinstaller
를 설치합니다.
$ pip install pyinstaller
2. exe 파일 만들기
설치가 완료되면 exe形式
파일을 만듭니다.
$ pyinstaller wallpaper_v2.0.py --onefile
--onefile
옵션은, 관련 파일을 1개에 정리해 준다고 하는 것. 선택 사항입니다.
실행 후 3개의 폴더와 spec形式
파일이 생겼습니다.
dist 폴더 안에, 작성한 exe形式
의 파일이 작성되고 있습니다.
이제 exe形式
로 변환할 수 있었습니다!
사이고에게
지난번 게시한 코드의 개판에 관해서였습니다.
절각 exe화했기 때문에, 태스크 스케줄러를 그만두고 windows의 스타트업에 푹 빠져 넣기로 했습니다.
매일 PC 시작한 타이밍에 실행해 주기 때문에, 이제 이것으로 안심의 것···.
참고 사이트
프로그램을 매일 실행하면 매일 벽지 다운로드하게 되어, 그것은 조금 넌센스라고 생각하기 때문에
if文
를 사용해 조건 분기해 보았습니다.또한 파이썬 환경이 없어도 움직이도록
exe形式
로 변환하여 움직이기로 결정했습니다.조건 분기
if문을 사용해, 지정된 격납처에 「wallpaper_yyyymm_1.jpg」라고 하는 파일이 없는지를 판정.
프로그램 실시 월의 이미지 파일이 없으면 배경 화면을 다운로드합니다.
우선, 실시일의 일자를 취득해, 파일명을 작성합니다. 이것은 이전과 동일합니다.
#--- import Today's date ---
dt_now = datetime.datetime.now()
print(dt_now.strftime('%Y/%m/%d'))
#--- path make ---
dst_path = r'C:\Users\ayk_f\wallpaper\wallpaper_'+dt_now.strftime('%Y%m')+'_1.jpg'
wname = 'wallpaper_'+dt_now.strftime('%Y%m')+'_1.jpg'
print('path: '+dst_path)
$ python wallpaper_v2.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
파일명을 만들 수 있었으므로 해당하는 파일명이 없는지를 판정해, 없는 경우만 벽지를 다운로드합니다.
is_file = os. path.isfile(dst_path)
print(is_file)
if is_file:
print(f"{wname} is a file.")
pass #なにもしない
else:
print(f"{wname} is a not file.")
os. path.isfile()
함수는 지정된 파일 이름이 존재하는 경우 True를 반환하는 함수 인 것 같습니다.
이번은 「지정한 디렉토리에 wallpaper_202109_1.jpg 가 존재하는 경우는 아무것도 하지 않는다, 존재하지 않는 경우는 다운로드한다」라고 하게 됩니다.pass
는 조건 분기의 결과가 아무것도 하지 않는 경우에 넣어 둘 필요가 있습니다.
이번에는 시험적으로 print
를 실행하고 있지만 실제로는 코멘트 아웃하기 위해 pass
를 넣고 있습니다.
참고로
이달의 벽지(wallpaper_202109_1.jpg)가 있을 때~~~ ! ! !
$ python wallpaper_v2.0.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
True
없을 때~~~~
$ python wallpaper_v2.0.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
False
이 재료가 하고 싶었을 뿐···(웃음)
없을 때(else시)에 배경화면을 다운로드하는 코드를 실행하고, 마지막으로 배경화면을 설정하는 코드를 실행하면 완성입니다.
벽지의 설정은 재기동시에 리셋 되어 버리므로, if문의 밖에 내놓아 둘 필요가 있습니다.
코드 exe 파일화
이 기사 대로 했습니다.
참고로 기록해 둡니다.
1. pyinstaller 설치
Python을 설치한 상태에서 pyinstaller
를 설치합니다.
$ pip install pyinstaller
2. exe 파일 만들기
설치가 완료되면 exe形式
파일을 만듭니다.
$ pyinstaller wallpaper_v2.0.py --onefile
--onefile
옵션은, 관련 파일을 1개에 정리해 준다고 하는 것. 선택 사항입니다.
실행 후 3개의 폴더와 spec形式
파일이 생겼습니다.
dist 폴더 안에, 작성한 exe形式
의 파일이 작성되고 있습니다.
이제 exe形式
로 변환할 수 있었습니다!
사이고에게
지난번 게시한 코드의 개판에 관해서였습니다.
절각 exe화했기 때문에, 태스크 스케줄러를 그만두고 windows의 스타트업에 푹 빠져 넣기로 했습니다.
매일 PC 시작한 타이밍에 실행해 주기 때문에, 이제 이것으로 안심의 것···.
참고 사이트
#--- import Today's date ---
dt_now = datetime.datetime.now()
print(dt_now.strftime('%Y/%m/%d'))
#--- path make ---
dst_path = r'C:\Users\ayk_f\wallpaper\wallpaper_'+dt_now.strftime('%Y%m')+'_1.jpg'
wname = 'wallpaper_'+dt_now.strftime('%Y%m')+'_1.jpg'
print('path: '+dst_path)
$ python wallpaper_v2.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
is_file = os. path.isfile(dst_path)
print(is_file)
if is_file:
print(f"{wname} is a file.")
pass #なにもしない
else:
print(f"{wname} is a not file.")
$ python wallpaper_v2.0.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
True
$ python wallpaper_v2.0.py
2021/09/13
path: C:\Users\ayk_f\wallpaper\wallpaper_202109_1.jpg
False
이 기사 대로 했습니다.
참고로 기록해 둡니다.
1. pyinstaller 설치
Python을 설치한 상태에서
pyinstaller
를 설치합니다.$ pip install pyinstaller
2. exe 파일 만들기
설치가 완료되면
exe形式
파일을 만듭니다.$ pyinstaller wallpaper_v2.0.py --onefile
--onefile
옵션은, 관련 파일을 1개에 정리해 준다고 하는 것. 선택 사항입니다.실행 후 3개의 폴더와
spec形式
파일이 생겼습니다.dist 폴더 안에, 작성한
exe形式
의 파일이 작성되고 있습니다.이제
exe形式
로 변환할 수 있었습니다!사이고에게
지난번 게시한 코드의 개판에 관해서였습니다.
절각 exe화했기 때문에, 태스크 스케줄러를 그만두고 windows의 스타트업에 푹 빠져 넣기로 했습니다.
매일 PC 시작한 타이밍에 실행해 주기 때문에, 이제 이것으로 안심의 것···.
참고 사이트
Reference
이 문제에 관하여(# 매월 벽지를 자동으로 바꾸고 싶다! 그 2), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ayk_f/items/40eca2f7376a2b04ce4c텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)