찾다

 >  Q&A  >  본문

python - 이 시점에서 프로그램 실행이 중지되는 이유는 무엇입니까? if isinstance(item, AnItem): 이 문장은 분명히 사실이지만 이 시점에서는 실행되지 않습니다.

항목에 AnItem을 정의했습니다

item = AnItem()을 사용하여 spider.py에서도 정의됩니다.

위의 이유: if isinstance(item, AnItem): 다음 문장은 실행되지 않습니다.

설명: isinstance(item, AnItem):이 false인 경우 이유를 모르겠습니다.

다른 사람의 코드를 봅니다. 인터넷에 이렇게 적힌 예도 있어요

내가 뭘 잘못 썼는지 모르겠어요?

으아악
漂亮男人漂亮男人2757일 전892

모든 응답(2)나는 대답할 것이다

  • 过去多啦不再A梦

    过去多啦不再A梦2017-05-18 10:59:41

    진실인지 거짓인지 출력해서 볼 수는 없나요?

    회신하다
    0
  • 習慣沉默

    習慣沉默2017-05-18 10:59:41

    인스턴스(항목, AnItem)인 경우:

    으아아아

    pipelines.py에서 위 명령문을 사용하여 테스트했습니다. 출력 jjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjjj
    무엇이 잘못되었는지 모르겠습니다.
    일반적인 논리에 따르면 spiders.py에 정의되어 있습니다: item = ZbaqcnItem()
    가져와야 할 모든 것을 가져옵니다. 그렇다면 그것은 파이프라인.py에 있습니다. 사실이어야 할까요?

    이제 수입품목에 문제가 있을거 같은데요?

    anspiders.py에서 다음과 같이 가져옵니다.
    from aqccncn.items import AnItem
    항상 오류 메시지가 표시됩니다. ImportError: 항목이라는 모듈이 없습니다.
    오랫동안 온라인으로 검색했지만 실행 가능한 솔루션을 찾을 수 없습니다.
    다음 방법을 사용할 수밖에 없습니다.

    그런 다음 spiders 파일에 items.py를 생성했습니다.
    from items import AnItem을 사용하여 가져왔습니다.

    그 다음에는 나중에 if isinstance(item, AnItem): 이 False입니다.

    이런 이유인가요?

    드디어—————————————————————————————————————————————
    수정됨 2016/04/29 18:04:

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

    모두 감사합니다. 이미 해결되었습니다. 처음에는 aaaa.items import AnItem에서 항상 오류가 발생하는 것으로 나타났습니다. 다시 spiders 파일에 items.py를 생성했기 때문에 가져온 items.py가 동일하지 않으므로 AnItem()도 동일하지 않습니다.

    하지만 또 다른 질문이 있습니다:

    spiders 폴더의 settgins.py 파일과 동일한 디렉터리에 items.py 파일을 생성한다면. 왜 이렇게 가져오나요: from AnAnAn.items import AnItem은 다음 메시지를 표시합니다: ImportError: No module names an AnAnAn.items?
    AnAnAn 폴더에는 기본적으로 생성된 items.py가 분명히 있으며 해당 코드가 추가되었습니다.

    이게 뭐가 문제야? 감사합니다.

    회신하다
    0
  • 취소회신하다