Macでpyperclipがno module namedでエラーになったとき【退屈なことはPythonにやらせよう】
2022-12-31T02:27:48.824Z
「退屈なことはPythonにやらせよう」で、pyperclipモジュールをimportしたら「No module named pyperclip」とエラーが出てしまった。Anacondaを入れていたら上手く行ったのかもしれないが、著者はAnacondaはWindowsでの利用を強く進めていたので、Macを使っている僕はインストールしなかったため、pip installとsysによるパス指定による方法で解決できた。
エラーの原因
原因としてはPythonのバージョンの違いとかでpyperclipが上手くインストールされてなかったことかなと思います。そのためMac側のターミナルでpin install pyperclipし、そのインストール先のパスを.pyファイルの最初の方で読み込むようにしてやると動いた。
まずPyperclipをちゃんと入れる
Mac側のターミナルで
pip show pyperclip
として見つからなければpyperclipをインストールする必要がある。
pipが使える状態であればGitHubからダウンロードとかしなくても、以下のコマンドでインストールまでやってくれる。
pip install pyperclip
これで以下の場所にpyperclipがインストールされる。
/usr/local/lib/python2.7/site-packages
(Finderでは/Users/ユーザー名/Library/Cachesにデータが作成されているのしか確認できないが、ターミナルでpip show pyperclipで確認すると確かに上記にインストールされていた)
IDLEが参照するパスを確認する
IDLE側参照しているライブラリのパスを確認するため下記のコードを打つと、さっきのパスは参照していない(ライブラリが読み込まれていない)ことが分かる(そもそもPythonのバージョンが2.7と3.7で違っているのでそこも不安ではある)。
import sys
print(sys.path)
ライブラリまでのパスを通してあげる
なのでphoneAndEmail.pyファイルの冒頭に以下のように書いてやればパスが通ってpyperclipを利用することができる。
import sys
sys.path.append('/usr/local/lib/python2.7/site-packages')
import pyperclip, re
# 以下コード本文