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

어제 포스팅했던 내용에서 이어지는 내용입니다.

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

API노드에 접속이 되지 않을 경우 다른 API노드로 전환을 할 때, 노드 리스트(list)에 대해 for 반복문을 쓰지 않아도 됩니다. 코드가 좀 더 간단해 질 수 있습니다.

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

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

while True:
  try:
    s = Steem(node=steem_nodes, num_retries=2)
    a = Account('joviansummer', blockchain_instance=s)
    print("연결 성공")
    break
  except:
    print("예외 발생. 1분후 재시도합니다.")
    time.sleep(60)

Steem() 객체를 사용할 때, 재시도 회수(num_retries)를 기본값(-1, 무한)을 사용하지 않고 특정값으로 지정해 줍니다. 여기서는 2회로 지정했습니다. 재시도 회수를 초과하면 노드 리스트의 다른 노드로 접속을 시도합니다. 코드는 좀 더 간단해지고, 대신 어느 노드에 접속했는지 명시적으로 알기는 어렵습니다.


@joviansummer의 스팀 프로젝트

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

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

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

jsup 수혜자 지정 기능 추가

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

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


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

Sort:  

Upvoted! Thank you for supporting witness @jswit.
default.jpg

Coin Marketplace

STEEM 0.35
TRX 0.12
JST 0.040
BTC 70733.96
ETH 3563.16
USDT 1.00
SBD 4.76