Scrapy: Ошибка загрузки - PullRequest
       7

Scrapy: Ошибка загрузки

0 голосов
/ 24 октября 2018

Я создаю свой собственный Spider в Scrapy с использованием CrawlSpider и использую класс Configuration, чтобы сделать его настраиваемым.Моя конфигурация имеет атрибут «Starting_urls», который я использую для передачи пауку.Похоже, что он правильно передается пауку, но я вижу ошибку ниже (см. Первую строку).

2018-10-24 11:41:17 [scrapy.core.scraper] ERROR: Error downloading <GET ['https://[VALID_WEBSITE']>
Traceback (most recent call last):
  File "C:\Users\David\.virtualenvs\cluster-pD1pIc9C\lib\site-packages\twisted\internet\defer.py", line 1416, in _inlineCallbacks
result = result.throwExceptionIntoGenerator(g)
File "C:\Users\David\.virtualenvs\cluster-pD1pIc9C\lib\site-packages\twisted\python\failure.py", line 491, in throwExceptionIntoGenerator
return g.throw(self.type, self.value, self.tb)
File "C:\Users\David\.virtualenvs\cluster-pD1pIc9C\lib\site-packages\scrapy\core\downloader\middleware.py", line 43, in process_request
defer.returnValue((yield download_func(request=request,spider=spider)))
File "C:\Users\David\.virtualenvs\cluster-pD1pIc9C\lib\site-packages\scrapy\utils\defer.py", line 45, in mustbe_deferred
result = f(*args, **kw)
File "C:\Users\David\.virtualenvs\cluster-pD1pIc9C\lib\site-packages\scrapy\core\downloader\handlers\__init__.py", line 64, in download_request
(scheme, self._notconfigured[scheme]))
scrapy.exceptions.NotSupported: Unsupported URL scheme '': no handler available for that scheme

Этот точно такой же URL работает с приведенной ниже командой:

scrapy runspider main.py

Так что это должно быть что-то в моем пауке, но я не уверен, что:

class MainSpider(CrawlSpider):
def __init__(self, configuration):
    super(MainSpider, self).__init__(configuration.name)
    dispatcher.connect(self.spider_closed, signals.spider_closed)
    self.configuration = configuration
    self.name = configuration.name
    self.allowed_domains = [configuration.allowed_domains]
    self.start_urls = [configuration.start_urls]
    self.product_link_id = configuration.product_link_id
    self.product_links = set()

1 Ответ

0 голосов
/ 24 октября 2018

Похоже, это почти всегда из-за неверного URL.В этом случае URL содержит дополнительные одинарные кавычки.При входе в браузер мне пришлось просто ввести URL.

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