scrapy-01:简单实列

最近开始学习自然语言处理,在自然语言处理的过程中,获取语料,处理语料都是非常重要的一部,因此在开始入门学习自然语言处理的同时,也开始练习一些爬虫,暑假时学过一点,但是也忘得差不多了,于是重新开始,并记录下来、

1 scrapy库介绍

(1)具体的介绍可以自行百度

(2)安装方法:

#利用pip安装
pip install scrapy
#利用conda安装
conda install scrapy

2 scrapy的简单使用

(1)代码实例


# coding: utf-8

import scrapy
from w3lib.html import remove_tags

#定义一个类,继承了scrapy,spider
class StackOvverflowSpider(scrapy.Spider):
   #爬虫项目的名字,在整个项目中,这个名字需要唯一
   name="stackoverflow"
   #指定爬虫开始的网址链接
   start_urls=["http://stackoverflow.com/questions?sort=votes"]

   #爬虫项目的回调函数
   def parse(self,response):
       #通过css样式来获取需要遍历的链接,
       for href in response.css(".question-summary h3 a::attr(href)"):
           #组装成完整的链接
           full_url=response.urljoin(href.extract())
           #对每一个完整的链接,传给回调函数,在回调函数中抓取页面内容
           yield scrapy.Request(full_url,callback=self.parse_question)


   def parse_question(self,response):
       yield{
           #指定要抓取的内容,title是抓取结果中保存的字段,后面对应的是他的页面上的内容,后面的css中的类名,需要事先打开网页源代码查看。
           'title':response.css('h1 a::text').extract()[0],
           'votes':response.css('.question .vote-count-post::text').extract()[0],
           'body':response.css('.question .post-text').extract()[0]
       }

(2)运行代码

scrapy runspider  scrapy_1.py -o abc.csv

(3)代码讲解:见代码中的注释


文章作者: IrvingBei
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 IrvingBei !
评论
 上一篇
scrapy-02:创建工程项目的简单步骤 scrapy-02:创建工程项目的简单步骤
前面看了一个爬虫的小例子,那么接下来就;来看看创建一个爬虫的步骤有哪些。 1 创建工程项目的简单步骤(1)开始一个爬虫项目进入一个你要创建爬虫的目录下面,在命令行窗口中执行如下代码: scrapy startproject 项目名 其中项目
2017-12-16
下一篇 
【笔记】01:《统计学习方法》-感知机模型学习笔记 【笔记】01:《统计学习方法》-感知机模型学习笔记
感知机模型描述: 这一部分主要介绍感知机是什么? 假设输入空间(输入空间即为特征空间,由实例的各种特征组成)是χ⊆R*,输出空间是Y={-1,+1}。当输入x∈χ表示实例的特征向量,对应于输入空间(特征向量)的点,输出y∈Y表示实例的
2017-12-13
  目录