1修改起始url
2检查域名
3在parse方法中实现爬取逻辑
4运行爬虫程序
scrapy crawl csdn --nolog
通过这个命令让我们看一下response到底给我们响应了什么东西
print(type(response))
response的实际类型
<class 'scrapy.http.response.html.HtmlResponse'>
Scrapy提供了一个xpath方法,直接调用xpath就可以了
parse是我们起始的解析方法
用xpath解析,提取出来的数据用extract() ,获取出来的数据用extract()提取出来,输出的格式是列表。
a = response.xpath('//*[@id="www-home-right"]/div/div[1]/div[2]/div[1]/a/div[2]/h3/text()').extract()[0].strip()
注意:解析出的url地址如果要再次发送请求,必须allowed_domains范围内,而start_urls中的url地址不受这个限制
启动爬虫的时候需要注意启动位置是在项目路径下启动
如果网页结构复杂,可以定义其他的解析函数,不过类中必须要有parse的解析
数据的返回推荐使用yield
response的常用属性
response.url:当前响应的url地址
response.request.url:发送请求的url
response.headers:响应头
response.requests.headers:请求头
response.body:响应头,就是返回的信息,byte类型返回
response.status:响应状态码