2014-01-14 5 views
0

У меня есть одна спиннер, которая царапает страницу и получает все URL-адреса.scrapy python call spider from spider

У меня есть еще один шпинель, в которой есть url и scrap.

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

код для получения всех ссылок с первого Spiner

for site in sites: 
      Link = site.xpath('a/@href').extract() 

, но я не знаю, как назвать Spiner для каждого Link

помощь пожалуйста

ответ

1

Я думаю, вам лучше объединиться два паука и сделать что-то вроде:

def get_links(self, response): 
    for site in sites: 
     link = site.xpath('a/@href').extract()[0] 
     yield Request(url=link, callback=self.scrape_them) 

def scrape_them(self, response): 
    # by now scrapy called the link and you get the response 
    ... 
+0

Это как раз то, что id используется для использования. но я получил это исключение, пожалуйста, проверьте http://stackoverflow.com/questions/21121941/scrapy-python-request-is-not-defined –

+0

Запрос не определен, есть ли что-то, что мне нужно импортировать? –

+0

'from scrapy.http import Request –

Смежные вопросы