我正在尝试抓取以下页面的结果: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。另外,即使我继续运行它,它也会继续抓取相同页面,但并非总是抓取所有页面。是否知道我的方法可能有什么错误或我缺少什么?
添加回答
举报
0/150
提交
取消