돈 주고 QR 코드 만들지 마세요! URL만 있으면 무료로 QR 코드 만드는 Python 파일
요즘 명함, 모바일 청첩장, 블로그, 유튜브 채널, 설문조사 링크 등을 공유할 때 QR 코드를 많이 사용합니다.
저도 URL을 QR 코드로 바꿔야 하는 일이 있어서 처음에는 무료 QR 코드 생성 사이트를 찾아봤습니다. 그런데 막상 사용해보면 고해상도 다운로드, 디자인 변경, 사용 기간 제한, 워터마크 제거 등의 이유로 유료 결제를 유도하는 경우가 있었습니다.
물론 디자인이 화려한 QR 코드나 통계 기능이 필요한 경우라면 유료 서비스를 사용할 수도 있습니다. 하지만 단순히 URL을 QR 코드 이미지로 변환하는 정도라면 굳이 돈을 낼 필요가 없습니다.
Python을 이용하면 URL 하나만 입력해서 QR 코드 이미지를 직접 만들 수 있습니다.
이번 글에서는 URL을 입력하면 QR 코드 PNG 파일을 생성하는 Python 파일을 만들어보겠습니다.
1. QR 코드 생성 사이트, 꼭 유료로 써야 할까?
QR 코드 생성 사이트를 검색해보면 정말 많은 서비스가 나옵니다.
간단히 URL을 넣고 QR 코드를 만드는 기능은 무료로 제공되는 경우도 많지만, 실제로 사용하다 보면 다음과 같은 제한을 만날 수 있습니다.
- 고해상도 이미지 다운로드는 유료
- 디자인 커스터마이징은 유료
- 일정 기간 이후 QR 코드 비활성화
- 동적 QR 코드 기능은 유료
- 워터마크 제거는 유료
- 회원가입 또는 결제 유도
물론 마케팅용으로 클릭 수를 추적하거나, 나중에 연결 URL을 바꿀 수 있는 동적 QR 코드가 필요하다면 유료 서비스가 필요할 수 있습니다.
하지만 아래처럼 단순한 목적이라면 직접 만들어도 충분합니다.
- 블로그 주소 공유
- 유튜브 채널 링크 공유
- 구글폼 설문지 연결
- 모바일 청첩장 링크 연결
- 상품 상세페이지 연결
- 안내문에 URL 삽입
- 내부 테스트용 QR 코드 생성
즉, URL을 이미지 QR 코드로 바꾸는 용도라면 Python으로 간단하게 만들 수 있습니다.
2. 이 프로그램으로 만들 수 있는 QR 코드 예시
이번에 만들 프로그램은 URL을 입력하면 QR 코드 이미지를 생성합니다.
예를 들어 아래와 같은 링크를 QR 코드로 만들 수 있습니다.
- 블로그 주소
- 유튜브 링크
- 구글폼 설문지
- 청첩장 링크
- 상품 상세페이지
- 카카오맵/네이버지도 링크
- 회사 홈페이지
- 포트폴리오 링크
- GitHub 주소
- PDF 다운로드 링크
예를 들어 블로그 주소를 입력하면 해당 블로그로 이동하는 QR 코드가 생성됩니다.
https://example.com
구글폼 설문지 링크를 입력하면 설문조사로 바로 이동하는 QR 코드를 만들 수 있습니다.
https://forms.gle/example
이렇게 생성한 QR 코드는 안내문, 포스터, 명함, 초대장, 상세페이지 등에 넣어서 사용할 수 있습니다.

3. Python으로 QR 코드를 만드는 이유
QR 코드 생성 사이트를 사용하면 편하긴 하지만, 매번 사이트에 접속해야 하고 다운로드 방식도 서비스마다 다릅니다.
반면 Python으로 직접 만들면 다음과 같은 장점이 있습니다.
첫 번째, 반복해서 사용할 수 있습니다.
한 번 파일을 만들어두면 URL만 바꿔서 계속 QR 코드를 생성할 수 있습니다.
두 번째, 무료로 사용할 수 있습니다.
단순 URL 변환 용도라면 별도의 유료 서비스를 사용할 필요가 없습니다.
세 번째, 내 PC에서 직접 생성할 수 있습니다.
외부 사이트에 URL을 입력하지 않고, 내 컴퓨터에서 바로 QR 코드를 만들 수 있습니다.
네 번째, 나중에 확장하기 쉽습니다.
처음에는 URL 하나만 QR 코드로 만들지만, 나중에는 엑셀 파일에 있는 여러 URL을 읽어서 QR 코드를 한 번에 생성하는 방식으로 확장할 수도 있습니다.
예를 들어 이런 식으로 발전시킬 수 있습니다.
- URL 여러 개를 한 번에 QR 코드로 만들기
- 파일명을 자동으로 지정하기
- 엑셀에서 URL 목록을 읽어오기
- QR 코드 색상 변경하기
- 로고가 들어간 QR 코드 만들기
- GUI 프로그램으로 만들기
- 실행파일
.exe로 배포하기
이번 글에서는 가장 기본이 되는 URL 하나를 QR 코드 이미지로 저장하는 방법부터 작성해보겠습니다.
4. 준비물
먼저 아래 준비물이 필요합니다.
- Python
- qrcode 라이브러리
- pillow 라이브러리
Python이 이미 설치되어 있다면 라이브러리만 설치하면 됩니다.
Python이 설치되어 있지 않은 분이라면 Python 공식 사이트에서 설치한 뒤 진행하면 됩니다.
다만 글 마지막 부분에 Python 설치 없이 사용할 수 있는 실행파일 버전도 함께 안내하겠습니다.
5. 라이브러리 설치 방법
터미널 또는 명령 프롬프트에서 아래 명령어를 입력합니다.
pip install qrcode[pil]
만약 위 명령어가 잘 안 된다면 아래 명령어로 실행해볼 수 있습니다.
python -m pip install qrcode[pil]
또는 Windows에서 Python Launcher를 사용하는 경우에는 아래처럼 입력해도 됩니다.
py -m pip install qrcode[pil]
여기서 qrcode는 QR 코드를 생성하는 라이브러리이고, pillow는 이미지를 저장하기 위해 사용되는 라이브러리입니다.
qrcode[pil] 형태로 설치하면 QR 코드 이미지 생성을 위한 관련 패키지까지 함께 설치할 수 있습니다.
6. URL을 QR 코드로 만드는 Python 코드
아래 코드를 Python 파일로 저장합니다.
저는 파일 이름을 아래처럼 저장했습니다.
qr_generator.py
코드는 다음과 같습니다.
import qrcode
from urllib.parse import urlparse
def make_qr(url: str):
parsed = urlparse(url)
domain = parsed.netloc.replace(".", "_")
if not domain:
domain = "qr_code"
file_name = f"{domain}_qr.png"
img = qrcode.make(url)
img.save(file_name)
print(f"QR 코드 생성 완료: {file_name}")
if __name__ == "__main__":
url = input("QR로 만들 URL을 입력하세요: ")
make_qr(url)
이 코드는 사용자가 URL을 입력하면 해당 URL을 QR 코드로 변환한 뒤 PNG 이미지 파일로 저장합니다.
예를 들어 아래 주소를 입력했다고 가정해보겠습니다.
https://example.com
그러면 example_com_qr.png와 같은 이름으로 QR 코드 이미지가 생성됩니다.
7. 실행 방법
코드를 저장한 폴더에서 터미널 또는 명령 프롬프트를 엽니다.
그리고 아래 명령어를 실행합니다.
python qr_generator.py
또는 Windows 환경에서 아래 명령어를 사용할 수도 있습니다.
py qr_generator.py
실행하면 아래와 같이 URL을 입력하라는 문구가 나옵니다.
QR로 만들 URL을 입력하세요:
여기에 QR 코드로 만들 URL을 입력합니다.
https://example.com
정상적으로 실행되면 아래와 같은 메시지가 출력됩니다.
QR 코드 생성 완료: example_com_qr.png
그리고 같은 폴더 안에 QR 코드 이미지 파일이 생성됩니다.

8. 저장되는 파일명 설명
이번 코드에서는 입력한 URL의 도메인을 기준으로 파일명을 자동 생성하도록 작성했습니다.
예를 들어 아래 URL을 입력하면
https://example.com
도메인 부분인 example.com을 가져옵니다.
그리고 파일명으로 사용할 수 있도록 점.을 밑줄_로 바꿉니다.
example_com
마지막으로 뒤에 _qr.png를 붙여서 저장합니다.
example_com_qr.png
즉, 최종 파일명은 아래처럼 만들어집니다.
example_com_qr.png
이렇게 하면 매번 파일명을 직접 입력하지 않아도 되고, 어떤 사이트의 QR 코드인지 쉽게 구분할 수 있습니다.
만약 URL 형식이 아니거나 도메인을 가져올 수 없는 경우에는 기본 파일명인 qr_code_qr.png 형태로 저장되도록 처리했습니다.
9. 자주 발생하는 오류: qrcode.py로 저장하면 안 됩니다
QR 코드 코드를 작성할 때 가장 흔하게 발생하는 오류가 있습니다.
바로 Python 파일 이름을 qrcode.py로 저장하는 경우입니다.
예를 들어 파일명을 아래처럼 만들면 안 됩니다.
qrcode.py
왜냐하면 우리가 설치한 라이브러리 이름도 qrcode이기 때문입니다.
Python은 import qrcode를 실행할 때 설치된 라이브러리를 불러와야 하는데, 현재 폴더에 있는 qrcode.py 파일을 먼저 불러오는 경우가 있습니다.
그러면 아래와 같은 오류가 발생할 수 있습니다.
AttributeError: module 'qrcode' has no attribute 'QRCode'
또는 QR 코드 관련 함수가 제대로 동작하지 않을 수 있습니다.
이럴 때는 파일명을 아래처럼 바꿔주세요.
qr_generator.py
url_qr_maker.py
qr_maker.py
그리고 같은 폴더에 아래 파일이나 폴더가 있다면 삭제하는 것이 좋습니다.
qrcode.py
qrcode.pyc
__pycache__
정리하면 다음과 같습니다.
qrcode.py ❌ 사용하지 않는 것이 좋음
qr_generator.py ✅ 추천
qr_maker.py ✅ 추천
url_qr_maker.py ✅ 추천
저도 처음에는 파일명 때문에 오류가 발생할 수 있다는 점을 놓치기 쉬웠습니다.
Python에서는 파일명과 라이브러리명이 겹치면 이런 문제가 생길 수 있으니 주의해야 합니다.
10. Python 설치가 어렵다면 실행파일 버전 사용하기
Python을 설치해본 적이 없거나, 명령어로 실행하는 방식이 익숙하지 않은 분들도 있을 수 있습니다.
이런 경우에는 실행파일 형태로 만들어서 사용할 수 있습니다.
실행파일 버전은 Python을 직접 설치하지 않아도 사용할 수 있도록 만든 파일입니다.
사용 방법은 간단합니다.
- 다운로드 받은 ZIP 파일의 압축을 풉니다.
- 폴더 안에 있는
URL_QR_생성기.exe파일을 실행합니다. - QR 코드로 만들 URL을 입력합니다.
- 저장 위치를 선택합니다.
- QR 코드 이미지가 PNG 파일로 저장됩니다.
Python이나 명령어에 익숙하지 않은 분들은 이 방식이 훨씬 편할 수 있습니다.
- 압축 파일을 해제한 뒤 실행해야 합니다.
- Windows 보안 경고가 뜰 수 있습니다.
- 바이러스 검사 후 사용하는 것을 권장합니다.
- 프로그램은 URL을 QR 코드 이미지로 변환하는 용도입니다.
- 중요한 개인정보나 민감한 링크는 사용 전 주의하는 것이 좋습니다.
11. 마무리
이번 글에서는 URL만 있으면 QR 코드를 무료로 만들 수 있는 Python 파일을 작성해봤습니다.
단순히 블로그 주소, 유튜브 링크, 구글폼, 청첩장, 상품 상세페이지 등을 QR 코드로 만드는 정도라면 유료 서비스를 사용하지 않아도 충분합니다.
Python의 qrcode 라이브러리를 사용하면 짧은 코드만으로 QR 코드 이미지를 만들 수 있고, 필요하다면 실행파일 형태로 만들어서 Python을 모르는 사람도 사용할 수 있습니다.
이번 글에서 만든 기능은 아주 기본적인 형태입니다.
나중에는 다음과 같은 기능으로 확장할 수도 있습니다.
- 여러 URL을 한 번에 QR 코드로 만들기
- 엑셀 파일에서 URL 목록을 읽어오기
- QR 코드 색상 변경하기
- QR 코드 중앙에 로고 넣기
- 저장 폴더 자동 지정하기
- GUI 프로그램으로 만들기
.exe실행파일로 배포하기
'Data Engineering & Automation > Python 자동화' 카테고리의 다른 글
| PySide6로 이해하기 1편: QMainWindow와 화면 뼈대 잡기 (0) | 2026.06.05 |
|---|---|
| PySide6 기본 정리: QWidget, Layout, StyleSheet 이해하기 (0) | 2026.05.28 |
댓글