Python - この時点でプログラムの実行が停止するのはなぜですか: if isinstance(item, AnItem): この文は明らかに true ですが、この時点では実行されません。
漂亮男人
漂亮男人 2017-05-18 10:57:41
0
2
885

アイテムに AnItem を定義しました

これは、 item = AnItem() を使用して Spider.py でも定義されています。

上記の理由: if isinstance(item, AnItem): この文に続くものは実行されません。

説明: if isinstance(item, AnItem): false ですが、理由がわかりません。

他の人のコードを見ます。インターネット上にはこのように書かれた例もあります。

自分が何を間違って書いたのか分かりません。

リーリー

漂亮男人
漂亮男人

全員に返信(2)
过去多啦不再A梦

それは本当か嘘ですか?出力して確認できませんか?

いいねを押す +0
習慣沉默

if isinstance(item, AnItem):

リーリー

pipelines.py の上記のステートメントを使用してテストしました。output jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
何が問題だったのかわかりません。
通常のロジックによれば、spiders.py で item = ZbaqcnItem() と定義されています。
インポートされるべきものはすべてインポートされます。それは、pipelines.py にあるはずです。

輸入品に問題があるような気がしますが?

anspiders.py で次のようにインポートします。
from aqccncn.items import AnItem
常にエラーを表示します。 ImportError: アイテムという名前のモジュールがありません
長い間オンラインで検索しましたが、実行可能な解決策が見つかりませんでした。
以下の方法を使うしかありません。

それから、スパイダーファイルに items.py を作成しました
from items import AnItem を使用してインポートしました。

その後、後の if isinstance(item, AnItem): が False になります。

これが理由ですか?

最後に——————————————————————————————————————————————
修正しました2016/04/29 18:04:

——————————————————————————————

皆さんありがとうございました。すでに解決済みです。最初は、aaaa.items import AnItem から常にエラーが発生することがわかりました。スパイダーファイルに items.py を再度作成したため、インポートされた items.py は同じではなく、AnItem() も同じではありません。

しかし、別の質問があります:

スパイダーフォルダー内の settgins.py ファイルと同じディレクトリに items.py ファイルを作成する場合。なぜこのようにインポートするのですか: from AnAnAn.items import AnItem は次のプロンプトを表示します: ImportError: No modulenamed AnAnAn.items?
AnAnAn フォルダーには、明らかにデフォルトで生成された items.py があり、対応するコードがそれに追加されます。

これの何が問題なのでしょうか?ありがとう。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート