강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của aspdosa
aspdosa

câu hỏi đã được viết

Làm gì với Python? Công việc Python hữu ích của Tiến sĩ Nam

Tạo trình tạo mã QR web sử dụng Flask

web_qrmaker.py

Viết

·

367

1

png_as_base64_str()은 파이썬의 3.10에서는 안되나요?

생성버튼을 누르면

No module named 'png'라는 메시지가 뜨네요.

찾아보니까 png_as_base64_str()은 deprecate되었다라고 하네요.

웹-크롤링pythonGUI

Câu trả lời 3

0

aspdosa님의 프로필 이미지
aspdosa
Người đặt câu hỏi

알겠습니다. 이것 저것 다 해보겠습니다. 감사합니다

nambaksa님의 프로필 이미지
nambaksa
Người chia sẻ kiến thức

현재 사용은 가능하니 그냥 쓰셔도 되고 함수를 변경하면 위에서 처럼 replace() 를 통해 변경해서 사용하시면 될 듯 합니다. 더 궁금하신 사항은 언제든 질문 주시기 바랍니다.

0

nambaksa님의 프로필 이미지
nambaksa
Người chia sẻ kiến thức

png_as_base64_str()가 deprecate 되었다고 하시는 거보니

pyqrcode 라이브러리가 아닌 pyqrcodeng 라이브러리를 사용하고 계신가 아닌가 생각됩니다.

그림에서 처럼 현재 python 3.10.2 버전 pyqrcode 던 pyqrcodeng 던 둘다 사용하는데 문제는 없어 보입니다. 

문서상에는 deprecate 되었다고 하나 현재 버전에서 사용은 잘 되고 있습니다만 강좌에서는 pyqrcode로 작성되었기 때문에 라이브러리 차이에 따른 다른 문제가 발생하는 부분에 대해서 모두 확인할수는 없을듯 합니다.

문서상 png_as_base64_str() 함수는 png_data_uri() 함수로 대체 된다고 하니 [pyqrcodeng 공식문서] 를 참고 해보시는것도 좋을듯 합니다. 위 그림의 선택영역을 보면 png_data_uri() 함수는 "data: image/png;base64," 를 포함해서 리턴해주므로 강좌의 코드에서 이 부분을 맞게 수정해야 할 것으로 보입니다. 아니면 강좌처럼 똑같이 나오게 하려면 

b = qrcode.png_data_uri(scale=5).replace("data:image/png;base64,", "")

이런식으로 replace 해서 문자열을 없애버리는 방법도 있을것 같습니다.

 

더 궁금하신 사항이 있으시면 새로운 질문을 남겨주시면 감사하겠습니다. 그래야 저한테 알림이 오거든요 ㅎㅎ

 

0

nambaksa님의 프로필 이미지
nambaksa
Người chia sẻ kiến thức

"파이썬에서 QR 코드 생성해보기" 강의에서 말씀드린 내용인데 놓치셨나 봅니다.

pyqrcode 에서 png 관련 기능을 사용하기 위해선 pypng 라이브러리가 설치 되어있어야 합니다. 

 

pip install pypng

 

로 설치하시면 됩니다.

Hình ảnh hồ sơ của aspdosa
aspdosa

câu hỏi đã được viết

Đặt câu hỏi