Python

[Python] QR코드를 빠르게 만들어보자

dev.yong 2020. 11. 15. 16:29

 

며칠 전 회사 팀원 중 한분이 끙끙 앓고 계시길래 무슨 일이냐고 물어봤더니

- 기획팀에서 3000여개의 URL을 네이버QR코드 생성기를 사용해서 몇시간에 걸쳐 QR코드를 생성하고 개발팀에 전달
- 적용해보니 URL이 잘못 입력되어 있어서 3000여개의 QR코드를 다시 만들어야 하는 상황
- 서비스 오픈은 몇시간 남지 않은 상태

 

서비스 오픈이 몇시간 남지 않은 상태에서 네이버QR코드 생성기로 한땀한땀 QR코드를 다시 만들기에는 시간이 부족해서 구글링을 하여 방법을 몇가지 찾아봤다.

구글 Chart API와 엑셀 함수는 파일로 저장하는 기능이 없어서(못 찾아서) 파이썬 스크립트를 활용해서 생성하기로 했다.

(파이썬을 다뤄보지 않아 코드 내용이 많이 부족할 수 있습니다. 잘못된 점 또는 개선해야 할 점이 있으면 댓글 부탁드려요😃)

 

작업사항

1. qrcode 라이브러리 설치

사전에 파이썬과 pip가 설치 되어있어야 하며, 아래 명령어로 qrcode라이브러리를 설치한다. (pip설치하기)

1
pip install qrcode
cs

 

2. 코드작성

코드는 아주 간단하다 qr코드를 만들 url들을 배열에 넣고 for문을 돌려주면 끝이다.

key파라미터 값을 파일명으로 만들어달라는 요청이 있어 key파라미터를 파일명으로 사용했다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/usr/bin/env python2.7
# -*- coding: utf-8 -*-
##########################################################################
# NAME          : make_qr.py
# Description   : qr생성기
# Author        : yong
# LAST UPDATE   : 2020-11-11
# Verersion     : 0.1
##########################################################################
import qrcode
 
url_rh=(
'https://www.서비스URL/service?key=A4_B10_C4_D1_E2'
,'https://www.서비스URL/service?key=A4_B10_C4_D1_E3'
)
 
for url in url_rh:
    # 파일명은 url의 key파라미터로 생성합니다.
    tmpArr=url.split('=')
    img = qrcode.make(url)
 
    # 생성된 이미지를 png로 저장합니다.
    img.save(tmpArr[1]+'.png')
 
cs