steem python 으로 mute 한 계정 목록 뽑기 (How to get steem account mute information with steem python)

in #kr-dev6 years ago (edited)

대문

steem python 으로 차단한 계정 목록 뽑기

How to get steem account mute information with steem python

어떤 계정이 차단한 계정 정보를 가져오는 python 코드는 다음과 같습니다.

from steem import Steem
import pprint

limit = 1000
account="" # account here

s = Steem(nodes=["https://api.steemit.com"])
start_id = ""
mutes = r = s.get_following(account, start_id, "ignore", limit)
while len(r) == limit:
    start_id = mutes[-1]['following']
    r = s.get_following(account, start_id, "ignore", limit)
    mutes = mutes + r[1:]
pprint.pprint([m['following'] for m in mutes])

덤으로, 해당 계정을 차단한 사람 목록을 뽑는 코드는 다음과 같습니다.
(크게 다르지 않습니다.)

from steem import Steem
import pprint

limit = 1000
account="" # account here

s = Steem(nodes=["https://api.steemit.com"])
start_id = ""
mutes = r = s.get_followers(account, start_id, "ignore", limit)
while len(r) == limit:
    start_id = mutes[-1]['follower']
    r = s.get_followers(account, start_id, "ignore", limit)
    mutes = mutes + r[1:]
pprint.pprint([m['follower'] for m in mutes])

삽질기

아무래도 잡담은 뒷쪽에 적는 것이 나을 것 같아서, 삽질과정을 뒷쪽에 적습니다.

steem python 으로 만든 스크립트에 차단 목록을 적용하고 싶었습니다.
steem python 문서에서 mute 로 검색해보니 검색 결과로 나오는 것이 없었습니다.

구글에서 steem python mute 로 검색해보니 Account 에 mute 관련 함수를 추가해달라는 제안글이 있었습니다.
하지만, 제가 하려는 작업에 도움이 될만한 글은 보이진 않았습니다.
(글을 쓰는 도중에 steem python ignore 로 검색해도 제가 원하는 정보는 안 보이네요.)

어떻게 찾았는지 기억은 안 나지만 follower 정보를 가지고 가져올 수 있다는걸 알게 되었습니다.
누군가 작성한 서비스 소스를 본 것 아닐까 싶긴 한데 기억이 나질 않습니다.

steem python 문서에서 get_following() 함수를 찾아봤습니다.
get_following(account: str, start_follower: str, follow_type: str, limit: int)
다른 것은 대강 알겠는데 follow_type에 뭘 줘야할지 모르겠네요.

소스코드 를 확인했더니 follow_api 의 get_following 을 호출하는군요.

스팀 api 문서에서 follow_api 를 찾아보았습니다.
따로 인자에 대한 설명이 되어있진 않고, 아래의 curl 예제를 보고 들어갈 인자를 알 수 있었습니다.
follow_type 에 ignore 를 줘야 하는군요.

이제 구글에 steem python mute 로 검색하면 이 글도 걸려 나오겠죠? ㅋㅋㅋ
(영어로 포스팅을 하면 더 좋...겠지만.............)

Sort:  

Congratulations @eversloth! You have completed the following achievement on the Steem blockchain and have been rewarded with new badge(s) :

Award for the number of comments received

Click on the badge to view your Board of Honor.
If you no longer want to receive notifications, reply to this comment with the word STOP

Support SteemitBoard's project! Vote for its witness and get one more award!

코딩지식이 없어 이해를 똑바로 했는지는 모르겠지만...
스팀잇에서 누가 누구를 차단했는지 알 수 있다는 것인가요?

네, 그것을 알아보기 위한 코드입니다.
자신을 누가 차단했는지 알아보고 싶으시면 Who mute me? 라는 서비스를 사용해 보시면 됩니다.
(판도라의 상자....)

복잡한 내용입니다.ㅋ
저 같이 포스팅만 하는 사람은 잘 활용하지 않겠지요? ^^;;

ㅎㅎㅎsteem 관련 개발 하실 분들에게 필요한 내용입니다

@eversloth님 리스팀 감사합니다. 앞으로도 곰돌이 많이 알려주세요! @gomdory 곰도뤼~

오 개발자신가요? 곰돌이 손보다가 방금 리스팀 보팅했길래 저도 와봤는데 재밌는 글이네요. 정말 스팀 문서화 최악이죠ㅎㅎ 옵션에 대한 설명 제로. 그나마 몇몇 예제로 알아서 추측하고 또 클래스 쏘스 코드보고 알아가고ㅎㅎ 재밌는 글 감사합니다. 그리고보니 늘 permlink를 위해 일단 제목에 영어를 넣는다는게 요샌 깜빡하네요.

네 개발자입니다 ㅎㅎ

개인 큐레이션 스크립트를 한 번씩 돌릴 때 차단해놓으신 분이 걸릴 때가 있습니다.
수정하려다 한번에 검색에 안 걸려서 매번 미루다가 이번에 작업했습니다.
문서로 파악 안되어서 다른 언어 라이브러리 문서 보고 api 문서나 소스 보고 그렇게 헤맸네요..

나중에 좀 덜 귀찮을때 문서 풀리퀘를 보내볼까 생각만 해보는 중입니다.

야 역시 능력있는 개발자분들은 다들 자기 큐레이션봇을 돌리는군요ㅎㅎ 그쵸 저도 다른 언어는 좀 더 뭐가 설명이 있나 살펴보기도 하고 js가 그나마 사용하는사람이 많아서인지 좀 더 나았던듯. 결국엔 소스보고ㅎㅎ

피드만으로는 부족한게 있어서 돌리고는 있는데 딱히 크게 더 편한 것 같진 않습니다..
역시 답은 소스죠.. ㅠㅠㅠ

곰돌이가 @eversloth님의 소중한 댓글에 $0.040을 보팅해서 $0.010을 살려드리고 가요. 곰돌이가 지금까지 총 395번 $5.867을 보팅해서 $5.840을 구했습니다. 추석보너스로 평소보다 $0.025 더 보팅했습니다. 즐거운 추석 연휴 보내세요! @gomdory 곰도뤼~

mute 정보를 가져올 수 있군요. 덕분에 좋은 정보 알아갑니다.
@eversloth님 스팀잇을 자주 방문해야겠어요.ㅎㅎ

댓글 감사합니다. 개발 글을 별로 자주 올리진 않습니다. ㅎㅎ

Coin Marketplace

STEEM 0.26
TRX 0.25
JST 0.040
BTC 92903.81
ETH 3331.70
USDT 1.00
SBD 3.29