2017年1月16日月曜日

Python / 最初の一歩1

Webスクレイピングしたい、ということでPythonやります


メモ

Mac
システムPythonを使うのもどうかなと思い、
pyenvでPython3系を使うことにした。

参考:Mac に Python 3.x 系と 2.x を共存するベストな方法
この記事3年前じゃん、、、どんだけ遅れてるんだ俺。
pyenv install 3.6.0 でこける
$ pyenv install 3.6.0
Downloading Python-3.6.0.tar.xz...
-> https://www.python.org/ftp/python/3.6.0/Python-3.6.0.tar.xz
Installing Python-3.6.0...

BUILD FAILED (OS X 10.12.2 using python-build 20160602)

Inspect or clean up the working tree at /var/folders/hw/cjswx79j0zg_q040bz66_d8m0000gn/T/python-build.20170116211951.2465
Results logged to /var/folders/hw/cjswx79j0zg_q040bz66_d8m0000gn/T/python-build.20170116211951.2465.log

Last 10 log lines:
  File "/private/var/folders/hw/cjswx79j0zg_q040bz66_d8m0000gn/T/python-build.20170116211951.2465/Python-3.6.0/Lib/ensurepip/__main__.py", line 4, in 
    ensurepip._main()
  File "/private/var/folders/hw/cjswx79j0zg_q040bz66_d8m0000gn/T/python-build.20170116211951.2465/Python-3.6.0/Lib/ensurepip/__init__.py", line 189, in _main
    default_pip=args.default_pip,
  File "/private/var/folders/hw/cjswx79j0zg_q040bz66_d8m0000gn/T/python-build.20170116211951.2465/Python-3.6.0/Lib/ensurepip/__init__.py", line 102, in bootstrap
    _run_pip(args + [p[0] for p in _PROJECTS], additional_paths)
  File "/private/var/folders/hw/cjswx79j0zg_q040bz66_d8m0000gn/T/python-build.20170116211951.2465/Python-3.6.0/Lib/ensurepip/__init__.py", line 27, in _run_pip
    import pip
zipimport.ZipImportError: can't decompress data; zlib not available
make: *** [install] Error 1
「すぐにググるのは最低な奴がすることだ」と誰かに言われた気がする。
とはいえ、立ち向かえなさそうなエラーのため即ググる。
参考:Qiita MacでPython 3.5.0インストールに失敗したら
xcode-select --install
xcodeのCLIツールが必要らしい
その後は無事成功

pyenv install --list
pyenvでダウンロード可能なバージョン一覧

pyenv versions
インストール済みのバージョン一覧

GithubのSSH公開鍵が違っていたりとかね
cat ~/.ssh/id_xxx.pub
を貼り付け

$ pyenv local 3.6.0
実行ディレクトリでpythonバージョンの変更

$ pyenv global 3.6.0
システム全体で使用するpythonバージョンを変更する

pyenv local xxxしてもバージョンが変更されない
  • eval "$(pyenv init -)"が実行されていない
  • $ which pythonが「/usr/local/bin/pyenv」のようにpyenvを示していない
の2つの場合があるそうです。参考:Qiita pyenvでPythonがSystemバージョンから切り替わらない時の対処
vim /etc/pathsが探索パスだと初めて知った。謝謝。

今日は環境構築でおしまい

0 件のコメント:

コメントを投稿