kr-dev#1. 개발자가 steemit 주무르기(1) / windows10 with python (by @skt1)

in #kr7 years ago (edited)

안녕하세요, 사과농축액🍎입니다.
@skt1님의 steem-python에 대한 열정이 대단하셔서 조금이나마 도움이 되고자 이 글을 적습니다.

이 글은 Windows10에 steem-python 설치에 대한 내용입니다.


@asbear님의 강의 원글

@skt1님의 실습글


Windows10에 python-steem을 설치 하는 과정을 총 5단계로 나누어지며 가장 어려운 부분이 Visual C++ 2015 Build Tools 설치 시간을 기다리를 것이므로 이 글을 따라하면 누구나 python-steem설치를 완료 할 수 있을것이라 생각 됩니다.

설치 순서는 아래 와 같습니다.

  1. python 설치
  2. steem 패키지설치
  3. random 모듈 수정
  4. funcy 다운 그레이드
  5. scrypt 모듈 pyscrypt 모듈로 변경

STEEP1. python 설치

https://www.python.org/downloads/ 로 접속 하셔서 Python 3.5.* x86 버전을 다운로드 합니다.
해당 링크를 이용하면 바로 다운 받으실수 있습니다. 다운로드
⚠️ x86-64 버전을 설치하시면 안됩니다. 꼭 x86버전으로 다운로드 해주세요

00_python_install.png
설치 경로는 계속 필요하니 기억해 주세요
⚠️ Add Python 3.5 to PATH 는 꼭 체크해주세요

설치가 완료 된 후 "명령 프롬프트" 혹은 "Windows PowerShell"을 이용하여 python을 실행합니다.(이 글에서는 "Windows PowerShell"을 이용합니다.)

01_python-install_complete.png
위와 같은 화면이 나온다면 설치가 완료 된 것입니다.

STEEP2. steem 패키지설치

Ctrl+C 키를 이용하여 python을 종료해주시고 steem 패키지를 설치하겠습니다.
"Windows PowerShell"에서 아래 명령어를 입력해주세요

pip install steem

만약 설치중 아래와 같은 에러가 발생한다면 링크로 이동하여 Visual C++ 2015 Build Tools 를 설치해 주세요. 혹시 visual studio 2015가 설치되어있음에도 불구하고 동일한 에러가 발생하는 경우에는 링크 내용을 확인해주세요. visual studio 2015 기본 설치 설정에 c++이 제외되어있어 발생하는 문제입니다.
10_steem_error.png

설치 완료후 다시 "Windows PowerShell"에서 아래 명령어를 입력해주세요

pip install steem

11_steem_complete.png
위와 같은 화면이 나온다면 설치가 완료 된 것입니다.

STEEP3. random 모듈 수정

다시 python을 실행합니다.
steem 모듈을 로딩해 봅시다.

>>> from steem.post import Post

아마도 아래와 같은 에러가 발생할겁니다.
20_random_error.png
위의 로그를 자세히 보면 nt.py에서 winrandom이라는 모듈을 불러오지 못하여 발생하는 문제입니다.

[python설치폴더]\lib\site-packages\Crypto\Random\OSRNG\nt.py 파일의 수정이 필요합니다.

만약 설치 폴더를 변경하지 않으셨다면 탐색기 주소줄에 "%AppData%\..\Local\Programs\Python\Python35-32\lib\site-packages\Crypto\Random\OSRNG" 해당 경로를 입력하면 바로 이동이 가능할것 입니다.

nt.py LINE:28

import winrandom 

from . import winrandom

이렇게 변경해 줍니다.
⚠️ "from . "가 추가 되는것 입니다. 띄어쓰기 주의

STEEP4. funcy 다운 그레이드

winrandom 모듈 수정 후 다시 steem 모듈을 로딩해 봅시다.

>>> from steem.post import Post

아마도 아래와 같은 에러가 발생할겁니다.
30_funcy_error.png

로그를 자세히 보면 funcy.simple_funcs 모듈을 불러오지 못하여 발생하는 문제입니다.
이번에는 이전과 달리 funcy페키지의 버전 문제인데요
기존 1.9.* 버전에서 1.8 버전으로 다운그레이드를 진행하겠습니다.
먼저 기존 funcy 페키지를 삭제합니다.
"Windows PowerShell"에서 아래 명령어를 입력해주세요

pip uninstall funcy

31_funcy_uninstall.png

삭제가 완료 되면 funcy 1.8 페키지를 설치해 줍니다.

pip install funcy==1.8

STEEP5. scrypt 모듈 pyscrypt 모듈로 변경

드디어 마지막 과정입니다.
funcy 페키지 다운그레이드 후 다시 steem 모듈을 로딩해 봅시다.

>>> from steem.post import Post

아마도 아래와 같은 에러가 발생할겁니다.
40_script_error.png

로그를 자세히 보면 scrypt 라이브러리를 불러오지 못하여 발생하는 문제인데요
[python설치폴더]\lib\site-packages\steembase\bip38.py 파일의 수정이 필요합니다.

만약 설치 폴더를 변경하지 않으셨다면 탐색기 주소줄에 "%AppData%\..\Local\Programs\Python\Python35-32\lib\site-packages\steembase" 해당 경로를 입력하면 바로 이동이 가능할것 입니다.

bip38.py LINE:18

        import scrypt

        import pyscrypt

이렇게 변경해 줍니다.

이제 모든 준비가 완료 되었습니다.

>>> from steem.post import Post
>>> p = Post("@lindaflyhigh/3zhmuz")
>>> dict(p)

50_complete.png

부디 @skt1님 께서도 성공하셨으면 합니다.
제가 vmware에 windows10을 새로 설치하고 작성한 글이라 정상동작 될것이라 생각 됩니다.

긴 글 읽어주셔서 감사합니다^^

Sort:  

Cheer Up!

  • from Clean STEEM activity supporter

헐 이렇게 대박 팁을 알려주시다니요!! 윈도우에서 개발하는 제게 완전 꿀팁입니다. 완전 감사해요 ㅜㅜ 잘 쓰겠습니다. 리스팀해가요!

꿀팁이 되었다니 기분이 좋네요. 리스팀도 감사합니다^^

안녕하세요 @idas4you님! ㅇㅁㅇ 아직 저에겐 너무어려운 말들이네요ㅜㅇㅜ 먼지는 잘몰라도 되게유용한 포스팅 같아요!

그렇;;;; 제가 생각해도 어려운 이야기에요;;;

헤헤ㅇㅁㅇ 넘나어려버여!

역시 고수십니다!! 저도 제 윈도우에 비슷한 과정으로 설치를 했는데 비개발자분들께 이걸 따라하라고 할수가 없어서 SteemJS로 바꿨는데... ㅎㅎㅎ idas4you 님의 친절한 매뉴얼덕분에 Steempy사용자가 늘어나길 기대해 봅니다.. ^^

고수는 곰처럼 님이시죠^^; 개인적으로 javaScript보다 python이 더 좋기는한데 npm이 엄청나 SteemJS을 추천하게 되네요.

저도 따라 해보다가 저기 스텝2의 뻘건~ 에러보고 접었는데 틈 날 때 다시 시도해 봐야겠네요. ㅋㅋ
감사합니다- ^^

꼭 성공하시기를 바랍니다.

흐메.. 너무 감사합니다..
미약하나마 풀봇으로 감사의 표현을 드려봅니다.

풀봇 감사합니다. vmWare설치 열정에 감동해서 저도 vmWare를 설치해 버렸네요^^

두 눈으로 보고 있으면서도 장님이네요. ㅠ
이런 어려운 것들은 잘 하시는 분들만 하는걸로... 저는 보팅만 하는걸로.. ㅎ

음. 어렵다기 보다는 어색한것이 겠지요. 각자 익숙한 분야가 있는거잔아요^^

뭔가 좋은 글인것 같아서 일단 라이크(ㅋ) 누릅니당. 근데.. 저... 이거 뭔가요? 도스화면에러 났을 때 같은데.,,

좋은 글 감사합니다. win7에서 설치 중인데 계속 아래와 같은 에러가 나옵니다. visual studio 설치했고, c++ option도 사용 중입니다. 혹시 원인을 알 수 있을까요?

이미지만 봐서는 원인을 모르겠네요. 파이썬 버전이 3.6인것이 신경쓰이긴 합니다^^;;
3.6 버전에서는 설치가 안되었던것 같아요.

3.5에서 설치를 하니 3.6에서 하라고 나와서 변경하였는데요? 3.5에서도 되나보군요. 3.5에서 다시 한번 해 볼께요. 답신 감사합니다.

그럼 디펜던시 때문에 버전이 안 맞는것 같네요. 3.6에서 설치 가능한지 다시 테스트해 봐야 겠습니다^^;;

steem_error.PNG
3.6 설치 하라 해놓고 @tradingideas 님이랑 같은 에러 나네요.
이거야원~ ㅋㅋ

제가 얼마전에 다시 설채히보니 3.5에서 설치 가능하더라고요. OS에 따라 차이가 있는것 같습니다.

전3.5로 하고 저 에러가 나는데...해결방법을 아시나요?