[개발이야기#002] imgur 서비스를 이용한 Python 이미지 업로드 해보기

in kr •  7 months ago  (edited)

imgur 서비스를 이용한 Python 이미지 업로드 해보기


No. 002
2024.04.23.화 | Written by @talkit

    Python  
    이미지 업로드  

스프링 부트 이야기는 좀 더 정리가 된다 음에 적고

오늘도 두서 없이 개발 글을 하나 적어 보겠습니다.

제 목표는 스팀잇에 글을 자동으로 배포하는 것입니다.

저는 Obsidian 에 글을 적고 해당 글을 스팀잇에 자동으로 작성하는 건데요

@anpigon 님의 스팀잇 플러그인을 이용하면 텍스트로만 이루어진 글은 잘 올릴 수가 있습니다.

옛날에 steemitimages.com 으로 바로 이미지를 올리는 코드를 어디선가 본 것 같은데

코파일럿에 물어봐도 모른다고 하네요 ^^

그래서 코파일럿이 우회 코드를 제공해 주었습니다.

https://imgur.com/

위 사이트에 업로드 한 후에 steemit에 글을 적을때 embed 하면 된다네요 ^^

그래서 오늘 간단하게 python으로 저 사이트에 image 업로드 하는 프로그램을 짜봤습니다.

무론 기본 적인 프로그램은 github 코파일럿이 작성했습니다.

import requests
import base64

# Imgur API 클라이언트 ID
client_id = 'your-secret-key'

# 업로드할 이미지 파일
image_path = 'C:/dev/pythonWorkspace/steemit/img1.png'

# 이미지를 base64 형식으로 인코딩
with open(image_path, 'rb') as f:
    image_data = base64.b64encode(f.read())

# Imgur API에 이미지 업로드 요청
response = requests.post(
    'https://api.imgur.com/3/image',
    headers={'Authorization': f'Client-ID {client_id}'},
    data={'image': image_data}
)

# 응답에서 이미지 URL 추출
image_url = response.json()['data']['link']

print(f'Uploaded image URL: {image_url}')

저기 보시면, your-secret-key는 https://imgur.com/ 에 가입 먼저하시고,

https://api.imgur.com/oauth2/addclient

URL에 어플리케이션을 등록하면 제공해 줍니다.

그래서 실제로 실행을 하였습니다.

request 패키지하고,
base64 패키지는 설치 되어 있습니다. ^^

혹시나 패키지 오류나면 설치 하시면 됩니다.

저는 저 프로그램 image_upload_imgur.py 로 저장해주고

secret-key를 변경 했습니다.

그리고,

python image_upload_imgur.py 

로 실행을 했더니 ^^

Uploaded image URL: https://i.imgur.com/oSvpbcC.png

위와 같이 응답을 줬습니다.

젤 처음에 보여 드린 이미지가 제가 제일 처음 올린 이미지를 markdown 이미지 태그로 넣어 놓은 것입니다.

![](https://i.imgur.com/oSvpbcC.png)

요렇게 적으시면 이미지가 나옵니다. ^^

그런데 혹시 이미지가 막힐수도 있겠다는 기분이 듭니다.

T.T

감사합니다.




<

Layout provided by Steemit Enhancer hommage by ayogom


Posted through the ECblog app (https://blog.etain.club)
Authors get paid when people like you upvote their post.
If you enjoyed what you read here, create your account today and start earning FREE STEEM!
Sort Order:  

안녕하세요.
SteemitKorea팀에서 제공하는 'steemit-enhancer'를 사용해 주셔서 감사합니다. 개선 사항이 있으면 언제나 저에게 연락을 주시면 되고, 관심이 있으신 분들은 https://cafe.naver.com/steemitkorea/425 에서 받아보실 수 있습니다. 사용시 @응원해 가 포함이 되며, 악용시에는 모든 서비스에서 제외될 수 있음을 알려드립니다.

[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.


안녕하세요.
이 글은 SteemitKorea팀(@ayogom)님께서 저자이신 @talkit님을 응원하는 글입니다.
소정의 보팅을 해드렸습니다 ^^ 항상 좋은글 부탁드립니다
SteemitKorea팀에서는 보다 즐거운 steemit 생활을 위해 노력하고 있습니다.
이 글은 다음날 다시 한번 포스팅을 통해 소개 될 예정입니다. 감사합니다!

개발자 멋지십니다.

멋진 개발자 분들이 많으시죠 ^^
기술쟁이일뿐입니다. ^^

저는 옵시디언에서 imgur 플러그인을 사용해서 이미지를 업로드 하고 있어요.

오 저것 조차도 제가 짤필요가 없네요.
플러그인 소개 감사합니다. ^^