2016-12-30 8 views
0

内で実行している私は、最初の行があるPythonスクリプト(blah.py)を、持っています。Scrapy "はImportError" bashスクリプト

私は.SHスクリプトを持っている:私はエラーを取得する "SH blah.sh" と.SHスクリプトを実行すると

#!/bin/bash 
python blah.py 

ImportError: No module named scrapy 

私が把握することはできませんなぜ。私はPythonスクリプトの後に他のコマンドを実行しているので、.shファイル内から実行したい。

+2

仕事の端末にチェックするために両方のパスが同じであることを確認したpython'、および内部同じbashスクリプト、 'python blah.py'の行の前に' which python'と入力します。それらが異なっているかどうか確認してください。 – eLRuLL

+0

あなたはそうです、彼らは異なっています。スクリプトの中でPython 2を使用しようとしていました。端末からPython 3を使用します。スクリプトの行を "python3 blah.py"に変更しました。 – Andrew

+0

@elRuLL - 答えとしてコメントを書き直したい場合は、回答を受け入れることができます。問題は.bashrcに "/usr/local/bin/python3.5"のエイリアスとして "python"があることでした。しかし、bashスクリプトの中では、このエイリアスは明らかに使用されていません。 – Andrew

答えて

1

異なる環境で両方を実行できるようです。

ターミナルでチェックインあなたがpython blah.pyタイプwhich pythonの行の前に、bashスクリプトのためwhich pythonを使用して、同じさpython blah.pyたPythonのバージョンを実行しています。

`Pythonのblah.py`タイプを`実行するときに彼らは、多分あなたは別の環境でそれを実行している