Python으로 Piwigo web API 호출

“사진관리 솔루션 Piwigo에 수십만장의 사진 업로드 시 성능 이슈가 없는지 테스트하기 위해 Python piwigo 모듈을 사용해 사진을 업로드 할 수 있는 코드를 작성했습니다.
Piwigo 에서 제공하는 web API를 타프로그램과 연동, 기존 사진관리 솔루션의 마이그레이션 등으로 활용할 수 있을것 같습니다.”

Piwigo web API : http://piwigo.org/demo/tools/ws.htm#top
Python piwigo 모듈 : https://pypi.python.org/pypi/piwigo

### 바로가기(연관) ###
사진관리 솔루션 Piwigo
>> Python으로 Piwigo web API 호출


1. 준비사항
1) Piwigo 설치된 서버 (앨범 22개 생성)
2) 위 서버에 Python3 설치, piwigo 모듈설치

3) 업로드할 jpg 사진파일 다수 /python/Picture/ 디렉토리에 업로드 (영문또는 숫자 띄어쓰기 없는 파일명)
4) 코멘트 작성한 comment.txt 파일

2. PiwigoUpload.py

2) 위 코드를 /python/ 에 위치시키고 앨범에 권한이 있는 관리자 ID, Password로 수정해 python3 /python/PiwigoUpload.py 하면 됩니다. (멀티 프로세스를 위해 여러번 실행)

3. 기타
1) 위 코드로 사진 업로드 시 처음 한동안 1초에 6장 정도 빠르게 업로드 되었지만 10만장 이상 업로드 시 속도저하가 심각하게 발생했습니다. (대략 2초에 1장, 검색속도는 빠름)

2) 데이타베이스 테이블 중 piwigo_images 와 piwigo_image_cagegory, piwigo_image_tag 의 스토리지 엔진을 MyISAM 에서 InnoDB로 변경하여 다시 1초에 5장 정도의 속도로 향상 되었습니다.

3) InnoDB 변경 후 장문 검색 시 에러 발생해 piwigo_images 테이블에 다음쿼리 실행 했습니다.

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

This site uses Akismet to reduce spam. Learn how your comment data is processed.