Scrapy закончился сразу после старта - PullRequest
2 голосов
/ 08 ноября 2019

Я не знаю почему, но моя скрапа почти мгновенно перестает ползать после того, как она начинается.

Иногда он работает с ползанием, но в большинстве случаев он начинает, получает 200 страниц и мгновенно останавливается.

2019-11-08 08:15:41 [scrapy.core.engine] INFO: Spider opened
2019-11-08 08:15:41 [scrapy.extensions.logstats] INFO: Crawled 0 pages (at 0 pages/min), scraped 0 items (at 0 items/min)
2019-11-08 08:15:41 [scrapy.extensions.telnet] INFO: Telnet console listening on 127.0.0.1:6024
2019-11-08 08:15:41 [rotating_proxies.middlewares] INFO: Proxies(good: 0, dead: 0, unchecked: 1011, reanimated: 0, mean backoff time: 0s)
2019-11-08 08:15:41 [scrapy_user_agents.middlewares] DEBUG: Assigned User-Agent Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/57.0.2987.133 Safari/537.36
2019-11-08 08:15:41 [rotating_proxies.expire] INFO: Getting an unchecked proxy: http://xxxx:xxxxxx@xxxxxxxxxxxx:8080
2019-11-08 08:15:42 [rotating_proxies.expire] DEBUG: Proxy <http://xxxx:xxxx@xxxxxx:8080> is GOOD
2019-11-08 08:15:42 [scrapy.core.engine] DEBUG: Crawled (200) <GET https://www.amazon.de/Produkte-303000031/s?me=A8KICS1PHF7ZO&rh=n%3A303001031> (referer: None)
2019-11-08 08:15:42 [scrapy.core.engine] INFO: Closing spider (finished)
2019-11-08 08:15:42 [scrapy.statscollectors] INFO: Dumping Scrapy stats:
{'downloader/request_bytes': 398,
 'downloader/request_count': 1,
 'downloader/request_method_count/GET': 1,
 'downloader/response_bytes': 2812,
 'downloader/response_count': 1,
 'downloader/response_status_count/200': 1,
 'elapsed_time_seconds': 1.356492,
 'finish_reason': 'finished',
 'finish_time': datetime.datetime(2019, 11, 8, 7, 15, 42, 637300),
 'log_count/DEBUG': 3,
 'log_count/INFO': 12,
 'log_count/WARNING': 42,
 'memusage/max': 59146240,
 'memusage/startup': 59146240,
 'proxies/good': 1,
 'proxies/mean_backoff': 0.0,
 'proxies/reanimated': 0,
 'proxies/unchecked': 1011,
 'response_received_count': 1,
 'scheduler/dequeued': 1,
 'scheduler/dequeued/memory': 1,
 'scheduler/enqueued': 1,
 'scheduler/enqueued/memory': 1,
 'start_time': datetime.datetime(2019, 11, 8, 7, 15, 41, 280808)}
2019-11-08 08:15:42 [scrapy.core.engine] INFO: Spider closed (finished)

Я не вижу ошибок или чего-то еще. И, как я говорю, иногда это работает. Если я сделаю это несколько раз, это сработает при некоторой попытке

То, что код работает, я могу видеть при попытках, когда он не останавливается мгновенно ...

У меня естьтот же сканер для другого сайта, который не имеет проблемы. Или это проблема на Амазонке?

Ответы [ 2 ]

0 голосов
/ 09 ноября 2019

Это просто журналы ошибок. Нам нужно увидеть немного кода на Python, чтобы лучше вам помочь. или, может быть, это команда, которую вы выполняете, если вы запускаете своих пауков.

При просмотре журналов ошибок, похоже, нет никаких проблем с синтаксисом в python. Но ваш паук просканировал как минимум 1 страницу в amazon.

Также попробуйте запустить

scrapy shell http://URL

Тогда вы сможете отладить свой код. построчно там.

0 голосов
/ 08 ноября 2019

Можете ли вы поделиться функциями start_requests / parser здесь?

Одной из причин такого поведения может быть то, что целевой веб-сайт знает, что вы являетесь сканером, а сервер отправил пустую / неправильную страницу с кодом возврата 200.

Попытка импорта:

from scrapy.utils.response import open_in_browser

и использование:

def myfunction(self, response):
    open_in_browser(response)

Чтобы увидеть, что видит сканер.

или попробовать случайных пользовательских агентов с другими случайнымизаголовки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...