3

次のコマンドを実行したい...

scrapy startproject resultScrapper

ただし、次のエラーが表示されます...

-bash: /Users/usrname/Library/Enthought/Canopy_64bit/User/bin/scrapy: /Users/usrname/Library/Enthought/Canopy_32bit/User/bin/python: bad interpreter: No such file or directory

どのスクレイピー

/Users/usrname/Library/Enthought/Canopy_64bit/User/bin/scrapy

ここに $PATH があります

echo $PATH
/Users/usrname/Library/Enthought/Canopy_64bit/User/bin:/Users/usrname/Library/Enthought/Canopy_64bit/System/bin:/Users/usrname/Library/Enthought/Canopy_64bit/User/bin:/Library/Frameworks/Python.framework/Versions/Current/bin:/usr/bin

Canopy_32bit バージョンを削除しましたが、まだ参照されているのはなぜですか? $PATH には、それへのリンクも含まれていません。

4

1 に答える 1

1

scrapyスクリプトのシバン行でインタープリターが正しく設定されていないと思われます。

の出力の場合

head -n1 /Users/usrname/Library/Enthought/Canopy_64bit/User/bin/scrapy

#! /Users/usrname/Library/Enthought/Canopy_32bit/User/bin/python

次に、どちらかに変更する必要があります

#! /usr/bin/env python

(より移植性がありますが、必要な python を呼び出さない場合があります) または

#! /Users/usrname/Library/Enthought/Canopy_64bit/User/bin/python

(移植性は低くなりますが、64 ビットの Enthought python を強制します。パスがシステムにとって正しいと仮定します)

さらに興味深いのは、64 ビット インストールが 32 ビット インタープリターにリンクすることです。考えられる説明はいくつかありますが、私が心配するのは、64 ビットでは機能しない依存関係があることです。純粋な python (ウェブサイトによると、Scrapy はそうです) の場合、これは問題になりません。

于 2013-05-14T09:33:51.287 に答える