Прежде всего, не публикуйте код или ошибки в виде изображений, так как это не позволяет никому найти ваш вопрос в поиске. В явно указано, как спрашивать страница
. Вы запускаете runner
внутри каталога glassesshop
, поэтому с точки зрения есть только один glassesshop
пакет, а не два с точки зрения проекта eye-glasses
Измените конфигурацию запуска PyCharm для запуска в каталоге $PROJECT_DIR$
, и тогда сценарий будет glassesshop/runner.py
или, конечно, переместится runner.py
на один каталог
Хотя это не то, о чем вы просили, вы также можете отладить своего паука, как обычный код Python - без использования всего механизма Scrapy - установив main
в нижней части вашего паука и работает нормально; тот же трюк будет работать с unittest
или pytest
, если вы хотите более формальную проверку
class MySpider(Spider):
def parse(self, response):
pass
if __name__ == '__main__':
with open("a-sample-response.html") as fh:
html = fh.read()
req = Request(url="https://example.com")
resp = HtmlResponse(url=req.url, request=req, body=html)
s = MySpider()
s.parse(resp)