jsup/avle code update - you don't have to write post everyday

by joviansummer original STEEMIT post: https://steemit.com/blog/@joviansummer/jsup-avle-code-update-you-don-t-have-to-write-post-everyday Hello, this is @joviansummer, developer of @jsup and@avle voting service. Voting service code for @jsup and @avle has been updated. I had been considering this update for a while, and recently I could come up with detailed implementation plan which resulted in a relatively swift code revision. The new added feature is capability to give daily upvote to the first thing you write for the day(timezone GMT+9) regardless of post or comment/reply. Writing a post everyday can be challenging. In that case, you can write a reply to receive daily upvote because writing a reply everyday is much easier and also a good way to engage in your community. Writing a post everyday just to get an upvote can be very tedious and exhausting, and post itself could easily become low-quality. There may be people who enjoy writing a post everyday, but we can't ignore th...

파이썬 beem에서 인터넷 회선 또는 API 노드 불안정성에 대한 대응 - 2

by joviansummer
original STEEMIT post: https://steemit.com/blog/@joviansummer/beem-api-2


여기에 정리하는 내용은 이전에 포스팅했던 대응 방안의 확장입니다. 우선 이전에 정리했던 내용은 아래의 링크입니다.

파이썬 beem에서 인터넷 회선 또는 API 노드 불안정성에 대한 대응

위의 포스트에서는 접속이 안될 경우에 대비해서 무한 루프와 try/except 구문으로 계속 재시도하는 코드 예시를 제시했습니다.

여기서는 스팀잇 공식 API노드(api.steemit.com)에 접속시도를 2회 이상 해도 실패할 경우 다른 비공식 API노드에 접속을 시도하는 예시를 생각해 보겠습니다. 아래의 코드입니다.

import time
from beem import Steem
from beem.account import Account

steem_nodes = ["https://api.steemit.com", "https://api.justyy.com"]

connection_flag = 0
while True:
  for node_url in steem_nodes:
    try:
      s = Steem(node=node_url, num_retries=2, timeout=90)
      a = Account('joviansummer', blockchain_instance=s)
      print("연결 성공:", node_url)
      connection_flag = 1
      break
    except:
      print("예외 발생:", node_url)
      time.sleep(1)

  if connection_flag == 1:
    break
  else:
    print("API노드 연결 실패. 1분후 재시도합니다.")
    time.sleep(60)

Steem 객체를 사용할 때 90초 이내에 응답이 오지 않고(timeout=90) 재접속을 2회 해도 성공하지 못하면(num_retries=2) 다음 API노드에 접속을 시도하는 형태입니다.

응답시간과 재접속 회수 제한 설정에 대한 내용은 이전 포스트를 참고하시기 바랍니다. 아래의 링크입니다.

파이썬 beem에서 Steem 객체를 사용할 때 재시도 회수와 시간초과 설정


@joviansummer의 스팀 프로젝트

스팀 증인노드를 운영중입니다. @jswit에 증인투표해 주시면 감사하겠습니다.
(https://steemitwallet.com/~witnesses)

jswit 증인 노드 프로젝트를 시작합니다.

jsup 업보팅(upvoting) 서비스 소개

jsup 수혜자 지정 기능 추가

jSTEEM 프로젝트 - 텔레그램 챗봇으로 구현하는 스팀 블럭체인 탐색기

STEEM.NFT - 디지털 아트 보존 프로젝트


Posted through the AVLE Dapp (https://avle.io)

Comments

Popular posts from this blog

Nuitka - 파이썬 스크립트를 바이너리 실행 파일로 변환

[EN] STEEM-services: dapps/services webpage with sort and search functions

[ENG] jsup 2.0 - make your upvote great again