Scrapy跟踪特定div中的链接

时间:2018-05-30 19:09:32

标签: python scrapy scrapy-spider

我试图关注相关链接,但我没有取得任何成功。我得到了#34;抓了0页"用我的scrapy脚本(全新的scrapy)。

我正在尝试抓取一系列看起来像这样的部分的页面:

<div id="index">
<h2>Find Listings </h2>
<div class="group">
  <h3>A</h3>
    <ul>
      <li><a href="/STATE-City/Segment-number-one">Segment-number-one</a></li>
      <li><a href="/STATE-City/Segment-number-two">Segment-number-two</a></li>
      <li><a href="/STATE-City/Segment-number-three">Segment-number-three</a></li>

等等......

在关注链接时,下一级别包含我想要解析某些数据的数据。当我直接解析页面时,它会提取我想要的数据。但是,我没有让脚本遵循上面的每个链接。

我目前的剧本:

    class MySpider(CrawlSpider):
        name = "domain"
        allowed_domains = ["domain.com"]
        start_urls = ['http://URL/STATE-City1', 
                      'http://URL/STATE-City2']      
        rules = (Rule(LinkExtractor(allow=r"/STATE-\w+/*?$"), callback='parse_contents'),)        

        def parse_contents(self, response):
            for bus in response.css('div.resultWrapper'):
                yield {        
                    'field1': bus.css('div.resultInner a::text').extract_first(),
                    'field2': bus.css('p.field2::text').extract_first(),
                    'field3': bus.css('span.field3::text').extract_first(),
                    'field4': bus.css('span.field4::text').extract(),
                    'field5' : bus.css('span.field5::text').extract(),
                }

感谢您的帮助。

BCBB

0 个答案:

没有答案