Python 2.7 将xhr链接添加到已删除类别HREF缺少方案错误

Python 2.7 将xhr链接添加到已删除类别HREF缺少方案错误,python-2.7,scrapy,scrapy-spider,Python 2.7,Scrapy,Scrapy Spider,我已经构建了一个spider,它从一个类别中获取数据,它遵循的方法是在开始url中指定类别页面,并为分页定义开始_请求,该请求在xhr请求提供的链接上迭代。因为我想一次获得所有类别,所以我编写了这样的代码。我的逻辑是首先获取所有类别链接,并使用xhr链接附加这些链接,每个类别的xhr链接遵循相同的字符串(?from=24&ajax=true&search\u query=&orderby=popular&orderway=asc&latestfilter=&source=menu),然后解析这些

我已经构建了一个spider,它从一个类别中获取数据,它遵循的方法是在开始url中指定类别页面,并为分页定义开始_请求,该请求在xhr请求提供的链接上迭代。因为我想一次获得所有类别,所以我编写了这样的代码。我的逻辑是首先获取所有类别链接,并使用xhr链接附加这些链接,每个类别的xhr链接遵循相同的字符串(?from=24&ajax=true&search\u query=&orderby=popular&orderway=asc&latestfilter=&source=menu),然后解析这些附加的url以启动请求,并迭代它们以进行分页和项目解析。但我无法运行spider,因为它会抛出缺少的scheme错误,因为在启动请求中,我没有提供http://i被困在如何解决此问题上,请帮助

class JabcatSpider(scrapy.Spider):
name = "jabcat"
allowed_domains = ["trendin.com"]
start_urls = [
'http://www.trendin.com',
]
max_pages = 400
def parse(self,response):
    urls =  response.xpath('//div[@class = "men"]//@href').extract()
    for url in urls:
        urljoin=(url + "/" "?from=24&ajax=true&search_query=&orderby=popular&orderway=asc&latestfilter=&source=menu")
        #yield scrapy.Request(urljoin, callback=self.start_requests)
        print urljoin

def start_requests(self):
    for i in range(self.max_pages):
         yield scrapy.Request('?from=%d&ajax=true&search_query=&orderby=popular&orderway=asc&latestfilter=&source=menu' % i, callback=self.parse)

def parse(self, response):
    for href in response.xpath('//*[@id="product_rows"]/div/div/div/a/@href'):
        url = response.urljoin(href.extract())
        yield scrapy.Request(url, callback=self.parse_detail_page)



def parse_detail_page(self, response):

    for sel in response.xpath('//*[@id="catalog-product"]/section[2]'):
        item = Jabongo()
        item['title'] = response.xpath('//*[@id="product-details-wrapper"]/div[1]/div[2]/div/div[1]/h1/span[2]/text()').extract()
#       item['price'] = response.xpath('//*[@id="pdp-price-info"]/span[2]/text()').extract()
#       item['image'] = response.xpath('//*[@class="content"]/h1/span[2]/text()').extract()
  #     # item['color'] = sel.xpath('//ul/li/label[.="Color"]/following-sibling::Span/text()').extract()
#   return item
     #pattern = response.xpath('//*[@class="content"]/h1/span[2]/text()').extract

@eLRuLL我所做的是在第一个响应中,我加入了我抓取的类别url和当我点击LoadMore按钮进行分页时得到的xhr请求。然后使用回调函数传递这个修改后的url来启动_请求函数,我希望响应位于?form=%d的for循环中,但我被困在这里,我不知道如何在这个函数中迭代解析函数得到的响应function@eLRuLL为了更好地从第一个解析函数中说明我的问题,我提取了类别URL,如:。。此特定类别具有“加载更多”按钮,单击该按钮可生成xhr请求,如orderby=popular&orderway=asc&latestfilter=&source=菜单中的“从中加载”部分对于所有类别都是通用的,因此,我决定对所有类别使用url join来加入该部分,并回调开始请求以迭代from=%d部分,但我该如何做?只需字符串操作。@eLRuLL你能给我一个示例代码吗?我对scrapynot scrapy是一个新问题,请向请求发送正确完整的url