시리즈를 17일 잠수 탔는데 놀랍게도 오늘은 쉬어가는 편입니다. 주님 오늘도 포스팅을 날로먹게 해주시고 몬헌 관통주 좀 주세요.
# 코딩몰라여 안내용 웹페이지 오픈!
우선, 님의 Heroku 포스트를 보고 만들 수 있었습니다. 코딩몰라여 시리즈의 코드 배포에 고민하고 있을 때 heroku를 말씀해주신 분이 꽤 계셨었거든요. 알려주신 덕분에 좋은 서비스도 알게되었고, python의 flask를 이용해서 간단한 웹사이트를 만들었습니다.
https://codingmola.herokuapp.com/
상남자를 의미하는 핑크색을 이용한 디자인에 주목
아직 웹사이트 이름은 고민 중입니다. 웹알못이라 웹페이지에서 Parameter를 입력받아 파이썬 함수를 호출할 수 있을줄 알았는데... 이게 수라의 길이었다는걸 만 하루 정도 소비해서 깨달았습니다. 템플릿과 뷰의 개념이란 어렵네요. Javascript를 쓰면 되긴 하겠지만... Python만으로 만들어보고 싶었습니다. 그래서 당분간은 미루기로.
코딩몰라여 시리즈 5편 중에서 1편과 5편의 기능을 repl.it 이라는 사이트에서 구현해봤습니다. 저는 repl.it을 님이 Inverse-Simpson 확인 코드를 소개하시던 포스트에서 처음 알게 되었어요. 코딩 환경을 직접 구축하지 않으시더라도 각종 프로그래밍 코드를 작성하거나 실행해볼 수 있습니다.
안타깝게도 repl.it에서 Steem-Python 환경을 온전하게 구현할 수 없었어요. 그리하여 코딩몰라여 시리즈에서 다룬 코드와 최대한 비슷하게 만들어서 올렸습니다. 제가 좀 더 repl.it을 공부해보도록 할게요.
# 보팅파워가 소모되지 않는 무료 보팅 서비스 소개
공부하다보니 꽤 괜찮은 기능을 만들었습니다. 보팅 파워를 소모하지 않고 보팅을 하는 기능인데요. 테스트를 해보니 무조건 되는건 아니고 몇 번 제한이 있는 것 같습니다. 편법이라서 그런걸까요. 여러분들께도 테스트를 받아서 기능을 확실하게 하고 싶습니다.
제 사이트에 오셔서 '마아냐에게 무료 보팅' 버튼을 누르면 steemconnect 모듈이 나타날거에요. 제가 일부 조정을 해서, 액티브 키와 마스터 키 대신에 포스트 키를 받도록 해두었습니다. 여러분들의 지갑은 소중하잖아요. ' -');;
계정과 포스팅 키를 넣으시면 보팅 안내창이 나타나면서 저의 페이아웃 되기 전의 글에 랜덤으로 보팅됩니다. 말씀드렸다시피 보팅 파워는 소모되지 않고요. 여러분들께서 도와주시면 기능을 좀 더 파악해서 알려드릴 수 있을 것 같아요. 부탁드립니다! _ _)/
# 웹페이지를 실컷 만들고보니 안내용으로만 쓰기엔 아까워서 컨텐츠 추가 예정
음... 웹페이지를 만들고나니 시리즈 안내용으로만 쓰기에는 아깝다는 생각이 들어요. 그렇다고 뭔가를 채우자니 무엇으로 채울지도 고민되네요. 예정해둔 아이디어는 두 가지 있습니다.
하나는 다른 스티미언 개발자들의 사이트 링크 모음(SIBBA, 스팀잇툴, Steeme 등)을 소개하는 페이지를 만드는 것입니다. 저는 즐겨찾기를 잘 사용하지 않는 편입니다. (대부분 github나 논문 관련으로 가득해서 잘 안쳐다봄.)
또 하나는, 탭을 누를 때 마다 특정 기준을 충족하는 스팀잇 포스트를 랜덤하게 보여주는 기능입니다. 작성자의 명성도, 작성 시간, 태그, 보팅 금액, 글자수 등등을 기준으로 세울 예정인데... 새싹(뉴비) 친화적인 기준이 되지 않을까 싶어요. 완성도가 높아지면 분리해서 서비스를 제공하는 것도 괜찮겠다는 생각도 드네요 ' -')b
만드는 과정은 코딩몰라여에서 다루도록 하겠습니다.
# get_account _history 함수의 예상치 못한 헛점
이 부분은 쉬어가는 편이 아닌, 본편에서 다룰까 싶었지만... 쉬어가는 편도 같은 시리즈고, 이에 대해 알고 계신 개발자분들께 조언을 빨리 듣고싶어서 언급할게요. 간단히 말씀드리면 get_account_history 함수가 가져오는 기록이 만 30일 치 밖에 되지 않는 문제점이 있었습니다. 덤으로 한 번에 가져올 수 있는 기록이 1만개 제한이라는 점도 있습니다.
from steem.account import Account
a = Account('maanya')
histories = list(a.get_account_history(index = -1, limit = 10000, raw_output=True))
print(len(histories))
print(histories[0])
print(histories[-2])
print(histories[-1])
결과를 보시면 저의 최근 기록이 6961번인데 반해, 가져온 결과를 4436개임을 확인할 수 있습니다. 그리고 최근 기록과 가장 마지막 기록이 만 30일 차이 이내의 기록인 것으로 짐작할 수 있어요. 또한 이상한 점은 만 30일 이후의 기록은 가져오지 않으면서 계정 생성 기록(0번)을 붙여서 가져옵니다. 허허.
node.js 같은 다른 언어에서도 마찬가지일까요? JSON 이용해봐도 결과는 마찬가지였습니다. ㅠ_ㅜ... 전부 가져올 방법은 블럭을 전부 검색하는 수 밖에 없을까요? -_-;; 개발자 선생님들의 말씀이 필요합니다. 흑흑.
# 다음 코딩몰라여 포스팅 방향은...
실시간으로 kr 태그 포스트에 작성되는 댓글을 가져오는 방법을 알아볼까요? 이 코드는 약간의 변형만으로 다양한 기능을 구현할 수 있게 됩니다. 제가 만든 스캠 감시 봇이라던지, 보팅 봇 등을 만들 수도 있습니다. 누군가가 포스팅 했는지, 댓글을 달았는지, 보팅을 했는지 등등 스토킹할 수도 있게되죠 (...) 최대한 나한테만 쉽게 설명해보겠습니다.
그럼 다음 시간에 만나요! 환절기에 몸 건강히! ' -^)b
p.s
님, 페이지 이름을 SSIBBA(Superior-SteemItBlog By Asinayo)로 바꾸실 생각은 없으신지..
자꾸 ssiba라 써서 에러를 겪는 중.
p.s
누군가의 마음 속.