2017-04-18 55 views
0

我想刮股票名称,其相关的新闻和时间的消息,但scrapy不返回任何输出为什么此选择器在chrome中工作,但不在scrapy中?

class StationDetailSpider(CrawlSpider): 
    name = 'tone' 
    start_urls = ["http://www.moneycontrol.com/india/stockpricequote/auto-lcvs-hcvs/ashokleyland/AL"] 

    def parse_news(self, response): 
     for brickset in response.css: 
      #TIME_SELECTOR = '//div.gD_10 ::text' 
      NAME_SELECTOR = './/div[@class='b_42h1[@class='b_42'] PT5 PR']' 
      #NEWS_SELECTOR = '//a.bl_13 ::text' 
      yield { 
       #'time': brickset.css(TIME_SELECTOR).extract_first(), 
       #'news': brickset.css(NEWS_SELECTOR).extract_first(), 
       'name': brickset.xpath(NAME_SELECTOR).extract_first(), 
       } 

任何一种洞察力将不胜感激。我尝试了其他格式,但徒劳无功。

回答

1

您的xpath看起来不正确,我想知道您在Chrome中做了什么以让它找到某种东西。

试试这个XPath:

//div[@class="b_42 PT5 PR"]/h1/text() 

假设你想刮

阿肖克利兰

+0

对不起,先生,但即使这种方法不起作用,也没有输出。 –

+0

>>> response.xpath('// div [@ class =“b_42 PT5 PR”]/h1/text()')。extract_first() u'Ashok Leyland'''' – Casper

+0

Showed you in我的评论^,它输出我的回答 – Casper

0

在这种特殊情况下 - 只有1 h1标记,以便您可以使用简单的xpath //h1/text()

+0

我已经尝试过,似乎没有产生任何输出。 –

相关问题