Отсутствует схема в URL запроса

Я застрял на этой ошибке некоторое время, следующее сообщение об ошибке выглядит следующим образом:

File "C:\Python27\lib\site-packages\scrapy-0.20.2-py2.7.egg\scrapy\http\request\__init__.py", line 61, in _set_url
            raise ValueError('Missing scheme in request url: %s' % self._url)
            exceptions.ValueError: Missing scheme in request url: h

Код Scrapy:

    from scrapy.contrib.spiders import CrawlSpider, Rule
    from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor
    from scrapy.selector import Selector
    from scrapy.http import Request
    from spyder.items import SypderItem

    import sys
    import MySQLdb
    import hashlib
    from scrapy import signals
    from scrapy.xlib.pydispatch import dispatcher

    # _*_ coding: utf-8 _*_

    class some_Spyder(CrawlSpider):
        name = "spyder"

        def __init__(self, *a, **kw):
            # catch the spider stopping
            # dispatcher.connect(self.spider_closed, signals.spider_closed)
            # dispatcher.connect(self.on_engine_stopped, signals.engine_stopped)

            self.allowed_domains = "domainname.com"
            self.start_urls = "http://www.domainname.com/"
            self.xpaths = '''//td[@class="CatBg" and @width="25%" 
                          and @valign="top" and @align="center"]
                          /table[@cellspacing="0"]//tr/td/a/@href'''

            self.rules = (
                Rule(SgmlLinkExtractor(restrict_xpaths=(self.xpaths))),
                Rule(SgmlLinkExtractor(allow=('cart.php?')), callback='parse_items'),
                )

            super(spyder, self).__init__(*a, **kw)

        def parse_items(self, response):
            sel = Selector(response)
            items = []
            listings = sel.xpath('//*[@id="tabContent"]/table/tr')

            item = IgeItem()
            item["header"] = sel.xpath('//td[@valign="center"]/h1/text()')

            items.append(item)
            return items

Я почти уверен, что это как-то связано с URL-адресом, который я просил, чтобы scopy следовал в LinkExtractor. При извлечении их в оболочку они выглядят примерно так:

data=u'cart.php?target=category&category_id=826'

По сравнению с другим URL, извлеченным из рабочего паука:

data=u'/path/someotherpath/category.php?query=someval'

Я посмотрел на несколько вопросов о SO, таких какЗагрузка картинок с помощью скрапа но после прочтения я думаю, что у меня может быть немного другая проблема.

Я также взглянул на это -http://static.scrapy.org/coverage-report/scrapy_http_request___init__.html

который объясняет, что ошибка выдается, если self.urls пропускает ":", глядя на определение start_urls, которое я определил, я не могу понять, почему эта ошибка будет отображаться, поскольку схема четко определена.

Спасибо за чтение,

Тоби

Ответы на вопрос(4)

Ваш ответ на вопрос