zoukankan      html  css  js  c++  java
  • scrapy框架day01

    scrapy框架介绍

      Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,非常出名,非常强悍。所谓的框架就是一个已经被集成了各种功能(高性能异步下载,队列,分布式,解析,持久化等)的具有很强通用性的项目模板。对于框架的学习,重点是要学习其框架的特性、各个功能的用法即可。

    scrapy安装

    Windows:  # 跟步骤走即可

          a. pip3 install wheel

          b. 下载twisted http://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted  # 下载你当前python的版本

          c. 进入下载目录,执行 pip3 install Twisted‑17.1.0‑cp35‑cp35m‑win_amd64.whl

          d. pip3 install pywin32

          e. pip3 install scrapy

    完成上步骤后

      创建项目  scrapy startproject 项目名

        目录结构 : 如图

              

              文件介绍

               scrapy.cfg   项目的主配置信息。(真正爬虫相关的配置信息在settings.py文件中)
                 items.py     设置数据存储模板,用于结构化数据,如:Django的Model
                 pipelines    数据持久化处理
                 settings.py  配置文件,如:递归的层数、并发数,延迟下载等
                 spiders      爬虫目录,如:创建文件,编写爬虫解析规则

         

       创建爬虫应用  cd到项目目录    执行   scrapy genspider 程序名(py名字) 爬取的网页(url)

              (例如:scrapy genspider qiubai www.qiushibaike.com)   

       创建完成后 会在如图生成文件

              

        创建后修改settings.py中的配置:如图

             

               USER_AGENT :  身份伪装
                 ROBOTSTXT_OBEY : 遵从协议    (False) 不遵从  默认Ture

        修改完成后 执行      scrapy crawl qiubai(py名) --nolog(不打印日志)  运行程序

     在spiders目录下创建的项目(爬虫文件)

          

    练习使用 : 将糗百首页中段子的内容和标题进行爬取

       

             输出 :   

        

           输出 : 

        如何取出文本:

          可以使用这两种方法取出data的文本

        如何持久化保存:  使用管道 piplines.py 定义数据类型 items

          1.将数据封装到 item中

              

          2.使用yield将items中的对象交给piplines管道进行保存

           

          3.settings中配置管道

               放开 300优先级从小到大!!!

         配置piplines 写入文件

           

         执行爬虫:

            

            

     如何保存在数据库中

     在piplinse.py中  写类

         Mysql :    使用pymysql模块

        

          一定要把类配置到下图

         

      

  • 相关阅读:
    springboot+https+http
    3.kettle-定时执行任务
    sqlserver清空删除日志
    C++学习(二)
    随笔(二) 安装Code::Blocks遇到的问题
    随笔(一) tensorflow环境的搭建
    C++学习(一)
    前端学习日记 (三)
    前端学习日记 (二)
    前端学习日记 (一)
  • 原文地址:https://www.cnblogs.com/luchenhui/p/9881275.html
Copyright © 2011-2022 走看看