일하면서 코인시세를 확인? 파이썬 스크립트 (Python script to query steam price)
안녕하세요 @flyyou입니다.
오늘은 시간이 좀 여유가 많았습니다.
일은 바쁜게 좀 끝나서 여유가 있는데 대놓고 모니터에 떡하니 거래사이트를 띄워놓기도 눈치보이고
그렇다고 시세정보를 보는 크롬 확장 프로그램을 보고 있는것도 좀 그렇고 ㅎ
고민 끝에 간단한 파이썬 스크립트를 만들어 보았습니다.
참고로 저는 파이썬 개발자가 아닙니다. 초보자로 재미삼아 공부삼아 이것저것 해보고 있는 수준입니다. ^^
myPython을 띄워놓고 소스를 받아서 실행만 시켜주면 됩니다.
30라인도 되지 않는 간단한 소스로 저는 지속해서 스팀가격 및 비트코인 이더리움등의 가격을 일하는 척! 하면서 볼 수 있습니다.
아니 일하는 중간중간에 실행창을 확인해 보는 것이지요~
좀 설명을 드리면 우선 9 line입니다.
이 부분은 cryptocompare.com의 API를 호출하는 것입니다.
중간에 파라미터로 ?fsyms=STEEM으로 조회를 원하는 코인과 &tsyms=BTC,USD,KRW 보고자 하는 가격을 넣으시면 됩니다.
https://min-api.cryptocompare.com/data/pricemulti?fsyms=STEEM,BTC,ETH&tsyms=BTC,USD,KRW
이렇게 STEEM, BTC, ETH를 넣어주시면 아래와 같이 3가지 코인에 대해서 가격을 표시해 줍니다.
{"STEEM":{"BTC":0.0008389,"USD":2.2,"KRW":2737.92},"BTC":{"BTC":1,"USD":2619.85,"KRW":3263700.88},"ETH":{"BTC":0.1401,"USD":362.21,"KRW":456009.75}}
이 부분은 주기적으로 api를 호출하기위해서 Timer라는 것을 이용해서 10초간격으로 조회를 하라고 Thread를 설정을 해 주는 부분입니다.
조금더 빠른 체크를 원하신다면 10이라는 숫자를 줄여보시면 되고 늘려보시면 주기가 더 길어집니다.
위 부분은 위의 API 결과에서 데이터를 추출해 주는 부분입니다. STEEM의 KRW값을 추출하기 위함입니다.
해당 부분은 STEEM 가격이 3000원이 넘었는지 판단하는 부분입니다.
3000원이 넘었다면 소리를 들려줍니다.
다른일을 하고 있다가도 소리를 듣고 아.... 스팀가격이 3000원이 넘었구나~~~ 라는 것을 알 수 있습니다.
제가 전문적인 파이썬 개발자가 아니라서 아주 초보적인 수준으로 작성해 본 샘플소스 같은 코드입니다.
조금 보강하면 특정 가격이 되면 메일을 보내준다는 등의 notification 로직도 넣을 수도 있겠습니다.
별것 아닌것 가지고 올리기 좀 쑥스럽습니다만. 아래 몇줄 안되는 전체 코드 붙여넣기 합니다.
심심하신 분들 해보시면 좋을 듯 합니다.^^
import threading
from urllib import request
import winsound
import json
def main():
print("### STARTING... ###")
checkCoin('https://min-api.cryptocompare.com/data/pricemulti?fsyms=STEEM&tsyms=BTC,USD,KRW')
def checkCoin(url):
threading.Timer(10, checkCoin, [url]).start()
data = request.urlopen(url).read(2000) # number of chars that should catch the announcement
print("########### http data ############")
#print(data)
json_data = json.loads(data)
print(json_data)
print(json_data["STEEM"]["KRW"])
krw = json_data["STEEM"]["KRW"]
if krw > 3000:
print("▲▲▲")
winsound.PlaySound("SystemExclamation", winsound.SND_ALIAS)
else:
print("Nothing")
main()
능력자 이시군요 ㅋㅋ 대단하시네요 : )
흑... 과찬이십니다~ 댓글 감사합니다~
분명 한글이고 영어인데
하나도 모르겠네요^^
당연합니다만..
감사합니다.
프로그램을 모르지만
막연히 이런 기능을 사용할 수 있으면
좋겠다고 생각을 했는데요.
능력이 안되니 엑셀을 사용해서
수동처리를 하는데..ㅎㅎ
증권사hts에서 자료를 받는 경우는
엑셀에서도 실시간으로 처리를 해주는데
이 코인은 방법이 없는거 같더라구요..
좋은 아이디어 공유해 주셔서 감사합니다.
행복하세요~:D
네 댓글감사합니다. 관련분야 종사자가 아니면 당연히 모를 수 밖에 없는 것입니다. 저도 다른준야는 모릅니다. ㅎ 시간이 된다면 간단하게라도 엑셀에서 볼수있는 방법이 없을까 고민해 보겠습니다. 즐거운 하루 되세요
대단하시네요 ㅋㅋㅋㅋ 팔로우 했습니당 ㅋㅋㅋ
과찬이십니다. 정말 굼뱅이가 구르는 제주가 있다고 생각해주세요 ㅋ 팔로우 감사합니다.
오오 열정이 대단하시네요^^ 잘 읽었습니다.
좋게 봐주셔서 감사합니다. 하루 마무리 잘 하세요~
Thank you for your good post. I am very pleased to read good posts in feeds.
I am glad you made a comment.
I will make an effort to raise a good post
스팀잇의 능력자라고 해도 과언이 아닐정도로 대단하십니다! ㅎㅎㅎㅎ
팔로우 누르고갑니다! ㅎㅎ 맞팔눌러주신다면 감사드립니다!
능력자라면 정말정말 챙피합니다~ 스팀잇에 능력자가 얼마나 대단하시 분들이 많으신데요~ ㅋㅋ 댓글 및 팔로우 감사합니다. 놀러갈께요~
#kr-dev 태그를 붙여주시면 개발에 관심있는 분들도 더 많이 보실수 있을것 같습니다 ㅎㅎ
아... #kr-dev 태그가 있는줄은 몰랐습니다. 태그 수정하도록 하겠습니다. 감사합니다.
파이썬이 꽤 단순명쾌!! 하다는 평을 들었는데 정말 간단하군요.
사실 @flyyou 님 평가덕에 간단하다는 생각이 들긴합니다^^
저도 시도 한번해봐야할 것 같습니다. 매번 시세 확인 ㅋㅋㅋ 이거 꽤 시간걸리거든요
댓글 감사합니다. 파이썬이 간단한 코드에 대해서 상당히 강력하다는 생각이 듭니다. 꼭 시간 되시면 한번 해보시길 권해 드립니다. 즐거운 하루 마무리 잘 하세요~