안녕하세요.
굳헬로 @goodhello 입니다.
어제 하이브와 작별인사를 하기 위해, 하이브에 올려진 모든 포스트를 수정하는 코드를 작성해 보았는데요.
하이브와 굳바이를 해보자!! 하이브에 올라간 글 수정!! 하지만...
하지만.. 파이썬 코드를 돌리려면 파이썬 개발 환경을 셋팅해야 하고, 이래저래 할일이 필요하다 보니..
오늘은 개발환경 셋팅하지 않고도 바로 하이브와 작별인사를 할 수 있도록 모든 포스트를 수정하는 방법을 알아보겠습니다.
그리고 어제 만든 코드를 업그레이드 해서 조금 더 작동하기 쉽게 만들어 보았습니다.
먼저 개발환경을 셋팅 하지 않고도 파이썬 코드를 실행할 수 있는
https://repl.it/
에 접속하셔서
start coding
을 실행 해 줍니다.
그리고 이 화면에서 Python
을 선택해 줍니다.
이제 Create Repl
을 눌러주시면 파이썬 코드를 입력하고 실행할 수 있게 될 것입니다.
import time
from hive import Hive
import json
client = Hive(keys=["포스팅 키"])
post_author = "아이디"
query = {
"tag": post_author,
"limit": 10,
"start_author": post_author,
}
index = 1
new_title = "byebye"
new_body = ""
while True :
mypost = client.get_discussions_by_blog(query)
for p in mypost :
print("%d : %s - %s" % (index, p["author"], p["permlink"]))
index = index + 1
if p["title"] == new_title :
print("pass")
else :
details = client.get_content(post_author, p["permlink"])
json_metadata = details['json_metadata']
json_metadata = json.loads(json_metadata)
tags = json_metadata["tags"][0]
json_metadata = json.dumps(json_metadata)
client.commit.post(title=new_title, body=new_body, author=details['author'], permlink=details['permlink'], tags = tags, json_metadata=details['json_metadata'], reply_identifier=(details['parent_author'] + '/' + details['parent_permlink']))
print("edited")
time.sleep(5)
if len(mypost) < 11 :
break
query = {
"tag": post_author,
"limit": 10,
"start_author": post_author,
"start_permlink": p["permlink"]
}
client = Hive(keys=["포스팅 키"])
에 포스팅 키를 넣어주시고, post_author = "아이디"
에 아이디를 넣어 주시면 되겠습니다.
그리고 new_title = "byebye"
에는 포스트 제목을
new_body = ""
에는 포스팅 내용을 넣으시면 되는데... 저는 다음 이미지를 넣었답니다.
그런데 바로 실행하시면 에러가 뜰것입니다. 이유는 파이썬 하이브 패키지를 설치않았기 때문인데요.
좌측의 버튼중에 Packages
버튼을 눌러서 파이썬 하이브 패키지를 설치해 보겠습니다.
search for a package
란에 다음과 같이
hivepy
를 입력하면 파이썬 하이브 패키지가 나오게 되는데
오른쪽은 + 버튼을 눌러주면 자동으로 파이썬 하이브 패키지가 설치되게 됩니다.
설치하는데 시간이 걸리니 조금 기다려 주시고...
이제 상단의 run
버튼을 눌러 코드를 실행하면
위와 같이 코드가 실행되면서 포스트가 자동으로 수정되게 됩니다.
그런데 가끔 RPCError 가 뜨면서 작동이 멈추기도 하는데... 하이브가 삐리해서 뜨는 거니 걱정하지 마시고 다시 run
버튼을 눌러서 실행해주면 수정된 포스트는 건너뛰고 이어서 수정 작업을 계속 하게 됩니다.
그러면 하이브와 바이바이 작업 끝!!!!
마지막으로 하나 추가하자면...
위의 작업이 귀찮거나 어려우신 분들은....
https://repl.it/repls/ElasticInbornComputergames#main.py
위의 링크로 들어가셔서 본인의 포스팅키와 아이디를 넣고 바로 'run'을 실행하시면 되겠습니다.
그럼 모두 하이브와 작별인사 잘 하시길 바라며~
오늘 하루도 행복하세요~