猿问

Scrapy搜寻器无法从多个页面搜寻数据

我正在尝试抓取以下页面的结果:


http://www.peekyou.com/work/autodesk/page=1


页面= 1,2,3,4 ...依结果依此类推。因此,我正在获取一个php文件来运行搜寻器,以针对不同的页码运行它。代码(用于单个页面)如下:


`import sys

 from scrapy.spider import BaseSpider

 from scrapy.selector import HtmlXPathSelector

 from scrapy.contrib.spiders import CrawlSpider, Rule

 from scrapy.contrib.linkextractors.sgml import SgmlLinkExtractor

 from scrapy.selector import HtmlXPathSelector

 from scrapy.item import Item

 from scrapy.http import Request

 #from scrapy.crawler import CrawlerProcess


 class DmozSpider(BaseSpider):

 name = "peekyou_crawler"


 start_urls = ["http://www.peekyou.com/work/autodesk/page=1"];


 def parse(self, response):


     hxs = HtmlXPathSelector(response)


     discovery = hxs.select('//div[@class="nextPage"]/table/tr[2]/td/a[contains(@title,"Next")]')

     print len(discovery)


     print "Starting the actual file"

     items = hxs.select('//div[@class="resultCell"]')

     count = 0

     for newsItem in items:

        print newsItem


        url=newsItem.select('h2/a/@href').extract()

        name = newsItem.select('h2/a/span/text()').extract()

        count = count + 1

        print count

        print url[0]

        print name[0]


        print "\n"

`Autodesk结果页面有18页。当我运行代码以爬网所有页面时,爬网程序仅从页面2获取数据,而不是从所有页面获取数据。同样,我将公司名称更改为其他名称。同样,它会刮掉一些页面,而不会休息。我在每个页面上都收到http响应200。另外,即使我继续运行它,它也会继续抓取相同页面,但并非总是抓取所有页面。是否知道我的方法可能有什么错误或我缺少什么?


慕慕森
浏览 188回答 2
2回答
随时随地看视频慕课网APP

相关分类

Python
我要回答