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

idas4you(63)
Published in
#kr
Words
439
Reading
2 min
Listen
Play
9y

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

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


asbear@asbear님의 강의 원글

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

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

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