🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

Q&A

解決済

2回答

3023閲覧

pip install gspreadできません

raspypy

総合スコア247

Raspberry Pi

Raspberry Piは、ラズベリーパイ財団が開発した、名刺サイズのLinuxコンピュータです。 学校で基本的なコンピュータ科学の教育を促進することを意図しています。

0グッド

0クリップ

投稿2019/10/17 04:48

##やろうとしていること

gspreadのインストール

##困っていること

~$ pip install gspread
を実行すると、

html

1 Could not find a version that satisfies the requirement gspread (from versions: ) 2No matching distribution found for gspread

と表示されて、インストールができません。

~$ sudo pip install gspread
を実行すると、

html

1Exception: 2Traceback (most recent call last): 3 File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 215, in main 4 status = self.run(options, args) 5 File "/usr/lib/python2.7/dist-packages/pip/commands/install.py", line 353, in run 6 wb.build(autobuilding=True) 7 File "/usr/lib/python2.7/dist-packages/pip/wheel.py", line 749, in build 8 self.requirement_set.prepare_files(self.finder) 9 File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 380, in prepare_files 10 ignore_dependencies=self.ignore_dependencies)) 11 File "/usr/lib/python2.7/dist-packages/pip/req/req_set.py", line 554, in _prepare_file 12 require_hashes 13 File "/usr/lib/python2.7/dist-packages/pip/req/req_install.py", line 278, in populate_link 14 self.link = finder.find_requirement(self, upgrade) 15 File "/usr/lib/python2.7/dist-packages/pip/index.py", line 465, in find_requirement 16 all_candidates = self.find_all_candidates(req.name) 17 File "/usr/lib/python2.7/dist-packages/pip/index.py", line 423, in find_all_candidates 18 for page in self._get_pages(url_locations, project_name): 19 File "/usr/lib/python2.7/dist-packages/pip/index.py", line 568, in _get_pages 20 page = self._get_page(location) 21 File "/usr/lib/python2.7/dist-packages/pip/index.py", line 683, in _get_page 22 return HTMLPage.get_page(link, session=self.session) 23 File "/usr/lib/python2.7/dist-packages/pip/index.py", line 792, in get_page 24 "Cache-Control": "max-age=600", 25 File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py", line 501, in get 26 return self.request('GET', url, **kwargs) 27 File "/usr/lib/python2.7/dist-packages/pip/download.py", line 386, in request 28 return super(PipSession, self).request(method, url, *args, **kwargs) 29 File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py", line 488, in request 30 resp = self.send(prep, **send_kwargs) 31 File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/sessions.py", line 609, in send 32 r = adapter.send(request, **kwargs) 33 File "/usr/share/python-wheels/CacheControl-0.11.7-py2.py3-none-any.whl/cachecontrol/adapter.py", line 47, in send 34 resp = super(CacheControlAdapter, self).send(request, **kw) 35 File "/usr/share/python-wheels/requests-2.12.4-py2.py3-none-any.whl/requests/adapters.py", line 423, in send 36 timeout=timeout 37 File "/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/connectionpool.py", line 643, in urlopen 38 _stacktrace=sys.exc_info()[2]) 39 File "/usr/share/python-wheels/urllib3-1.19.1-py2.py3-none-any.whl/urllib3/util/retry.py", line 315, in increment 40 total -= 1 41TypeError: unsupported operand type(s) for -=: 'Retry' and 'int'

と表示されて、こちらもインストールできません。
何か他に必要なライブラリがあるのでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

結論として、gspreadとoauth2clientのインストールはできました。
インストールできるときと、できないときがあり、原因が不明です。

pipのアップグレードについては、次の理由によりアップグレードを断念しました。
pi@raspberrypi:~ $ pip install --upgrade pip
~省略~
Successfully installed pip-19.3

pipのUpgradeに成功し後、pip installコマンドが使えなくなってしまった。
pi@raspberrypi:~ $ pip install gspread
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
from pip import main
ImportError: cannot import name main

この問題の原因は、apt で最初にインストールした pipと、
「pip install --upgrade pip」というコマンドで後からインストールされる pipに互換性がないから。

つまり、aptでインストールしたpipをpip自身で更新することがNG
そのため、aptでインストールしたpip以外を削除しました。
結局、pipのバージョンを更新することができないという結論になりました。

投稿2019/10/18 01:11

raspypy

総合スコア247

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

bash

1$ pip3 install gspread

では、どうでしょうか。

投稿2019/10/17 06:10

ryuii

総合スコア438

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

raspypy

2019/10/17 06:15

インストールできました。 素人質問で申し訳ありませんが、私の環境は、Python 2.7.13です。 pip3コマンドは、勝手にPython3を使用している環境で使われると思っていました。 Python 2.7.13でもpip3が使用できるのですね。 pipでインストールできない原因について、もう少し詳しく教えていただけると助かります。
raspypy

2019/10/17 06:23

続いて、outh2clientのインストールも試してみましたが、こちらは、 $ pip install oauth2client $ pip3 install oauth2client いずれも、次のメッセージが表示されて、インストールできませんでした。 Could not find a version that satisfies the requirement oauth2client (from versions: ) No matching distribution found for oauth2client
ryuii

2019/10/17 06:27

おそらくなのですが、pipとpip3のバージョンが合わない可能性があるので、アップグレードしてみて、再度お試しください。 $ pip install --upgrade pip $ pip3 install --upgrade
raspypy

2019/10/17 06:36

$ pip install --upgrade pip $ pip3 install --upgrade pip いずれも試してみましたが、やはり↓のコメントがでてしまいます。 Could not find a version that satisfies the requirement pip (from versions: ) No matching distribution found for pip 先ほどインストールできた $ pip3 install gspread をもう一度試してみましたが、(すでにインストールされているというコメントが表示されることを期待して試しましたが) 再び↓のメッセージとなりました。 Could not find a version that satisfies the requirement pip (from versions: ) No matching distribution found for pip
ryuii

2019/10/17 06:41

OSは、raspbianですか? こちらのpipのアップグレード方法もあります。 python -m pip install --upgrade pip
raspypy

2019/10/17 06:44

回答ありがとうございます。 OSは、raspbian (stretch)を使用しています。 $ python -m pip install --upgrade pip を実行してみましたが、 やはり、↓のメッセージがでてしまいます。 Could not find a version that satisfies the requirement pip (from versions: ) No matching distribution found for pip
raspypy

2019/10/17 07:06

ありがとうございます。 pip及びpip3はすでにインストールされていて、次のバージョンとなっています。 pi@raspberrypi:~ $ pip3 --version pip 9.0.1 from /usr/lib/python3/dist-packages (python 3.5) pi@raspberrypi:~ $ pip --version pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7) pipのアップグレードができないので、これが原因でライブラリをインストールできないのでしょうか。
ryuii

2019/10/17 07:22

>pipのアップグレードができないので、これが原因でライブラリをインストールできないのでしょうか。 そうかもしれません、うまくいかなくて申し訳ないです。 最新にできそうなリンクは見つけました。 Raspberry PiにPython3.7.2をインストール https://okashimoze.jp/blog/raspberry-pi/385.html
raspypy

2019/10/17 08:48

素人質問ですみません。 python3.7.2をインストール場所ですが、指定フォルダはあるのでしょうか? それとも、インストール先はどこでも良いのでしょうか?
ryuii

2019/10/17 08:53

コンパイルして、make installするとデフォルトの場所にインストールしてれます。 そのあとダウンロードしたファイルは必要なくなるので、 一時的なディレクトリ、例えば、ユーザーのホームディレクトリなどでもよいです。
raspypy

2019/10/17 09:06

ありがとうございます。 インストール途中まで行っているのですが、 /home/pi/xxxフォルダでコマンドを実行していたら、python3.7.2フォルダが、この場所にできてしまいました。 →Sudo make install すると、このフォルダは不要になるのでしょうか?
ryuii

2019/10/17 09:09

sudo make installを実行すると、 /usr/local/lib/python3.7/site-packages に新しくインストールされると思うのですが、違ったら正常に動作しなくなるため、念の為バックアップとして、とっておいてください。
raspypy

2019/10/17 09:24

ありがとうございます。 本題については、引き続きインストールして、結果を報告させていただきます。
raspypy

2019/10/17 23:45

まず、pip3のバージョンですが、次の結果となりました。 教えていただいたサイトのバージョンより古いので、pip3のupgradeが失敗しているのでしょうか。 pi@raspberrypi:~ $ pip3 --version pip 18.1 from /usr/local/lib/python3.7/site-packages/pip (python 3.7) 続いて、oauth2clientのインストールですが、次のメッセージが表示されました。 原因が全く分からず困っております。 pi@raspberrypi:~ $ pip3 install oauth2client Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple Collecting oauth2client Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)'))': /simple/oauth2client/ ~省略~ Could not find a version that satisfies the requirement oauth2client (from versions: ) No matching distribution found for oauth2client Could not fetch URL https://pypi.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)'))) - skipping Could not fetch URL https://www.piwheels.org/simple/pip/: There was a problem confirming the ssl certificate: HTTPSConnectionPool(host='www.piwheels.org', port=443): Max retries exceeded with url: /simple/pip/ (Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1056)'))) - skipping
raspypy

2019/10/18 01:45

ryuiiさま 情報ありがとうございます。そして、いろいろ教えていただき、ありがとうございました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問