8
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Python初心者が ModuleNotFoundError: No module named 'tweepy' で挫けそうになった話

Last updated at Posted at 2020-03-02

あらすじ 

インストールしたはずのtweepyが何故かimport出来なかった人の話です。
解決に丸一日かかりました。多分teratailが無かったら解決してない。
有識者の皆さん本当にありがとう

便利だったコマンド

pip3 show tweepy --- Macのターミナルで使用 インストール出来てるかを確認出来た。location
で何処にあるか確認出来ました。

import sys
import pprint
pprint.pprint(sys.path) --- この3行を一つで使ってました。もし使う人がいたらpython(?)の.pyファイルで保存して実行してみてください。何処を参照してるかが分かります。

https://qiita.com/kakari8888/items/86d9c255204b063c87ee
この記事がとても助かりました。

解決のあらすじ

結果的には上記のpip show tweepyで分かった
locationの**/usr/local/lib/python3.7/site-packages**を参照してないことが分かったので、パスを通しました。
何処を修正すればいいかは意外とすぐ分かったんですが、その修正がマジでわからんかった。

解決の道筋

まず、

import sys
sys.path.append('/usr/local/lib/python3.7/site-packages')

を延々とやってました。このpath自体にミスは無いんですが、このpathは
プログラム実行中にしか反映されない
ものなんです。こんな簡単なこと...と解決してからは思いますが気づけないものです。
このことに気づけたのでtweepyでツイートするコードと合体させました。

import sys
sys.path.append('/usr/local/lib/python3.7/site-packages')

#!/usr/bin/env python
# coding:utf-8

#Tweepyのインポート
import tweepy

#各種キーをセット
CONSUMER_KEY = 'xxxxx'
CONSUMER_SECRET = 'xxxxx'
auth = tweepy.OAuthHandler(CONSUMER_KEY, CONSUMER_SECRET)
ACCESS_TOKEN = 'xxxxx'
ACCESS_TOKEN_SECRET = 'xxxxx'
auth.set_access_token(ACCESS_TOKEN, ACCESS_TOKEN_SECRET)

#APIインスタンスを作成
api = tweepy.API(auth)

#ツイート内容を記入
api.update_status("Hello World")

各種キーのxxxxxは自分のAPIを入れてください。
これでHello World とツイートできてたら大丈夫です。
初めての投稿なのでお見苦しいところもあるかと思いますが、参考にしていただければ幸いです。

8
8
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?