
VisualStudioCodeを使って、Pythonのお勉強をしている。
環境構築は、Qiitaなどに記される先人の知恵を拝見し、見よう見まねでコマンドを実行し、とりあえず動くとこまでは来ている。
で、Pythonを使ってTwitterにツイートをしてみるテストを実施していたのだけど、もろもろつまづいたので、自分のメモがてら記しておく。
まず
import twitter
を記述している訳だが、黄色い波線が出ている。
コマンドラインから実行すると実行は出来ている。
ハイライトには以下のアラート表記。
Import “twitter” could not be resolvedPylance reportMissingImports
なんだかよく分からないが、コマンドラインから該当のpyファイルを実行すると動作はしているので、放っていたのだが、気持ちが悪くて悪くて低優先で調べていたのだけど、今日やっと解決したのでメモしておく。
実は、デバッグをする時にブレークポイントを設定して、F5キーを押すのだが、これだと実行が出来なかった。実行時のエラーは以下のメッセージ。
例外が発生しました: ModuleNotFoundError
ファイル名、クラス名は私が適当に付けてる名前なので御留意を。
No module named ‘twitter’ File “/Users/newriver/Desktop/hogehoge/tweetClass.py“, line 2, in <module> import twitter File “/Users/newriver/Desktop/hogehoge/tweetTest.py“, line 1, in <module> import tweetClass
うむ。やはり例の黄波線エラーが絡んでいることは間違いない。
ブレークポイントが使えないならprint()やtry〜except eで標準出力してトラップしてやる!と意地張ってたのだが、めっちゃ効率悪い。実行するたびにツイートされちゃうし。。。
で、いろいろ調べて試行錯誤した結果、VS CodeのPython拡張機能のsettings.jsonに、Pythonの実行実行ファイルを追記してやることとtwitterコンポーネントのPathを書いてやることで解決した。
なのできっと、VS CodeからPythonに対してPathが通ってなかったことが原因だと思われる。
解決手順は、まず、VS Codeの拡張機能でPythonを探して、設定(歯車)マークを押し、「拡張機能の設定」をクリックする。
で、検索窓で
extraPaths
と入力し、extraPathsのSettings.jsonで編集をクリックする。
すると、
“python.autoComplete.extraPaths”: [
],
このようなコードブロックが出来ているので、まずはここにTwitter部品のPathを書いてあげる。★1
twitter部品のPathの調べ方は
which Twitter
と打ってみれば表示されるのでこれをそのままコピペした。(もちろんインストールされてること前提ね)
ただ、これだけでは上手く行かなくて、このブロックの下に以下も追記する。
“python.analysis.extraPaths”: [
]
ここのブロックにもtwitter部品のPathを書いてあげる。
この理由は素人の私にはわからない。おまじないだと思って書いてる。
そして最後に。
上記の★1のコードブロックの上に、
“python.pythonPath”: Python3のパス
を書いて、保存すると、黄波線エラーも消えたし、F5でデバッグ実行することも出来るようになった。
素人の私の拙い説明で何一つ伝わってないと思うが
とにかく、settings.json追加すべきものを以下に記す。
“python.pythonPath”: “/Users/hoge/fuga/python3”,
“python.autoComplete.extraPaths”: [
“/Users/hoge/fuga/twitter”
],
“python.analysis.extraPaths”: [
“/Users/hoge/fuga/twitter”
]
これで上書き保存すると解決した訳です。
ツイートも出来るようになったし、何か面白いこと出来そうな予感☆
お読み頂き、ありがとうございました。