因为web要开卷考试,准备把W3C上的东西爬下来去考试
用最简单的方法:
spider.py:
# -*- coding:utf-8 -*-
import scrapy
class W3CSpider(scrapy.Spider):
name='W3C'
start_urls=[
'http://www.w3school.com.cn/html/index.asp',
]
def parse(self,response):
for href in response.xpath('//div[@id="navsecond"]/div[@id="course"]/ul/li/a/@href'):
yield response.follow(href,self.parse_content)
def parse_content(self,response):
yield{
'content':response.xpath('//div[@id="maincontent"]').xpath('normalize-space(string(.))').extract()[0],
}
注意以下几点:
1.parse函数是提取课程表下的所有链接
2.normalize-space()是去除所有空格和换行
3.提出所有文本
data = response.xpath('//div[@id="example"]')
info = data.xpath('string(.)').extract()[0]
info就是<div id="example">
标签下所有的文本