2016/7/13 23:39:43 xPath 分析网页元素
1. 采用QQ浏览器 , 当前以获取qiushibaike里面的内容以及好笑,评论数为例![]()
![]()
![]()
![]()
![]()
选择需要抓取的内容,然后右键检查

会出现一个调试界面,在 elements 里面选择需要抓取的信息,右键 copy - copy XPath

3. 接下来 可以到 console 界面调试一下抓取的信息(妹的,这么强悍)
使用 $x('XPath') 可以抓到相关信息

4. 相应的我们可以得到相关Xpath
1.内容 //*[@id="qiushi_tag_116975883"]/div[2]2.好笑 //*[@id="qiushi_tag_116975883"]/div[3]/span[1]/i3.评论数 //*[@id="c-116975883"]/i
5.以上只是分析了一个,那如何获取所有呢?如下图,先分析所有的内容。

5.1 然后获取,

结合其他人的项目代码分析
from scrapy import Spiderfrom scrapy.selector import Selectorfrom stack.items import StackItemclass StackSpider(Spider):name = "stack"allowed_domains = ["stackoverflow.com"]start_urls = ["http://stackoverflow.com/questions?pagesize=50&sort=newest",]def parse(self, response):questions = Selector(response).xpath('//div[@class="summary"]/h3')for question in questions:item = StackItem()item['title'] = question.xpath('a[@class="question-hyperlink"]/text()').extract()[0]item['url'] = question.xpath('a[@class="question-hyperlink"]/@href').extract()[0]yield item我们将遍历问题,从抓取的数据中分配标题和URL的值。一定要利用Chrome开发者工具的JavaScript控制台测试XPath的选择器,例如$x('//div[@class="summary"]/h3/a[@class="question-hyperlink"]/text()') 和 $x('//div[@class="summary"]/h3/a[@class="question-hyperlink"]/@href')。


浙公网安备 33010602011771号