Scrapy笔记: 一 安装:

  1. pip3 install wheel

    1. pip3 install lxml

      1. pip3 install pyopenssl

      2. pip3 install -i https://mirrors.aliyun.com/pypi/simple/ pypiwin32

      3. 下载文件(twisted): https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted pip3 install 文件路径\Twisted-19.2.0-cp36-cp36m-win_amd64.whl 6.pip3 install scrapy 7.scrapy 测试安装是否成功 Scrapy 1.6.0 - no active project ...

二 scrapy命令 全局(所有路径下都可以使用): bench Run quick benchmark test fetch Fetch a URL using the Scrapy downloader

      # 会把爬虫程序创建在当前目录下
    genspider     Generate new spider using pre-defined templates

    # 可以在当前目录下启动爬虫程序
    runspider     Run a self-contained spider (without creating a project)

    runspider 爬虫程序的绝对路径

    settings     Get settings values
    shell         Interactive scraping console

    # 创建scrapy项目
    startproject Create new project
    version       Print Scrapy version
    view

局部(在scrapy项目中可以使用):
    bench         Run quick benchmark test
    # 监测语法
    check         Check spider contracts
    # 根据爬虫程序的name 启动爬虫程序
    crawl         Run a spider

    # !!!!!!!重点使用它!!!!!!!
    scrapy crawl name

    edit         Edit spider
    fetch         Fetch a URL using the Scrapy downloader
    genspider     Generate new spider using pre-defined templates
    # 查看所有的爬虫程序
    list         List available spiders

    parse         Parse URL (using its spider) and print the results

    runspider     Run a self-contained spider (without creating a project)

    settings     Get settings values
    shell         Interactive scraping console
    startproject Create new project
    version       Print Scrapy version
    view         Open URL in browser, as seen by Scrapy

三 创建scrapy项目 Django: # 创建项目 django-admin startproject P1 cd P1

    # 创建实例
  python3 manage.py app01
  python3 manage.py bbs
Scrapy:
  # 创建项目
  scrapy startproject spider_project
  cd spider_project

  # 创建爬虫程序
  scrapy genspider chouti chouti.com

  # 执行爬虫程序
  scrapy crawl chouti

  # 取消日志
  scrapy crawl --nolog chouti

settings:
  # 不遵循反爬协议
  ROBOTSTXT_OBEY = False
main.py
  from scrapy.cmdline import execute
  # execute(['scrapy', 'crawl', 'baidu'])
  execute("scrapy crawl --nolog chouti".split(' '))
main.py
  from scrapy.cmdline import execute
  # execute(['scrapy', 'crawl', 'baidu'])
  execute("scrapy crawl --nolog chouti".split(' '))
Spiders.chouti.py

  class ChoutiSpider(scrapy.Spider):
      def parse(self, response):
      def parse_user_index(self, response):
items.py
  # 新闻items类
  class SpiderNewListItem(scrapy.Item):
      # define the fields for your item here like:
      # 新闻链接
      new_url = scrapy.Field()
      # 新闻文本
      new_text = scrapy.Field()
      # 点赞数
      nice_num = scrapy.Field()
      # 新闻ID
      new_id = scrapy.Field()
      # 评论数
      commit_num = scrapy.Field()
      # 新闻详情
      new_content = scrapy.Field()
      # 发表新闻用户的主页
      user_link = scrapy.Field()
    # 新闻items类
  class SpiderUserListItem(scrapy.Item):
      # define the fields for your item here like:
      # 新闻链接
      new_url = scrapy.Field()
      # 新闻文本
      new_text = scrapy.Field()
      # 点赞数
      nice_num = scrapy.Field()
      # 新闻ID
      new_id = scrapy.Field()
      # 评论数
      commit_num = scrapy.Field()
      # 新闻详情
      new_content = scrapy.Field()
      # 用户名
      user_name = scrapy.Field()

pipelines.py

  class SpiderNewListPipeline(object):
      def __init__(self, ip, port, mongo_db):
          self.ip = ip
          self.port = port
          self.mongo_db = mongo_db
    # 必须配置才可以启动ITEM_PIPELINES
  ITEM_PIPELINES = {
      'spider_project.pipelines.SpiderNewListPipeline': 300,
      'spider_project.pipelines.SpiderUserListPipeline': 301,
  }

  # MongoDB配置信息
  IP = 'localhost'
  PORT = 27017
  DB = 'chouti'

浅谈scrapy框架安装使用的更多相关文章

  1. Python爬虫进阶三之Scrapy框架安装配置

    初级的爬虫我们利用urllib和urllib2库以及正则表达式就可以完成了,不过还有更加强大的工具,爬虫框架Scrapy,这安装过程也是煞费苦心哪,在此整理如下. Windows 平台: 我的系统是 ...

  2. Python爬虫进阶之Scrapy框架安装配置

    Python爬虫进阶之Scrapy框架安装配置 初级的爬虫我们利用urllib和urllib2库以及正则表达式就可以完成了,不过还有更加强大的工具,爬虫框架Scrapy,这安装过程也是煞费苦心哪,在此 ...

  3. 手撸ORM浅谈ORM框架之基础篇

    好奇害死猫 一直觉得ORM框架好用.功能强大集众多优点于一身,当然ORM并非完美无缺,任何事物优缺点并存!我曾一度认为以为使用了ORM框架根本不需要关注Sql语句如何执行的,更不用关心优化的问题!!! ...

  4. 手撸ORM浅谈ORM框架之Add篇

    快速传送 手撸ORM浅谈ORM框架之基础篇 手撸ORM浅谈ORM框架之Add篇 手撸ORM浅谈ORM框架之Update篇 手撸ORM浅谈ORM框架之Delete篇 手撸ORM浅谈ORM框架之Query ...

  5. 手撸ORM浅谈ORM框架之Update篇

    快速传送 手撸ORM浅谈ORM框架之基础篇 手撸ORM浅谈ORM框架之Add篇 手撸ORM浅谈ORM框架之Update篇 手撸ORM浅谈ORM框架之Delete篇 手撸ORM浅谈ORM框架之Query ...

  6. 手撸ORM浅谈ORM框架之Delete篇

    快速传送 手撸ORM浅谈ORM框架之基础篇 手撸ORM浅谈ORM框架之Add篇 手撸ORM浅谈ORM框架之Update篇 手撸ORM浅谈ORM框架之Delete篇 手撸ORM浅谈ORM框架之Query ...

  7. 手撸ORM浅谈ORM框架之Query篇

    快速传送 手撸ORM浅谈ORM框架之基础篇 手撸ORM浅谈ORM框架之Add篇 手撸ORM浅谈ORM框架之Update篇 手撸ORM浅谈ORM框架之Delete篇 手撸ORM浅谈ORM框架之Query ...

  8. Scrapy 框架 安装 五大核心组件 settings 配置 管道存储

    scrapy 框架的使用 博客: https://www.cnblogs.com/bobo-zhang/p/10561617.html 安装: pip install wheel 下载 Twisted ...

  9. Scrapy 框架 安装

    Scrapy 框架 Scrapy是用纯Python实现一个为了爬取网站数据.提取结构性数据而编写的应用框架,用途非常广泛. 框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页 ...

随机推荐

  1. 最强CP!阿里云联手支付宝小程序如何助力双11?

    作为首次“全面上云”的双11,阿里云征服了每秒订单峰值54.4万笔的世界新记录.正是在阿里云的保驾护航下,即使访问量是平时的5到6倍,小程序也鲜少出现卡顿或者宕机的现象,“依靠阿里云,我们整个天猫双1 ...

  2. 用闭包解决 js 循环中函数变量暂存问题

    需求:有一个数组,根据数组的值渲染对应的数字div,单击对应的div 在控制台打印对应的数字.如点击1,控制台打印1. 问题: 不管点击哪个值 打出来都是4 代码如下 <!DOCTYPE htm ...

  3. Houdni学习——【三】裂开的墙砖

    Houdni学习--[三]裂开的墙砖 Houdinisophoudinisop Houdni学习--[三]裂开的墙砖 一.OverView 一条从板块上裂开的纹路,并在一段距离后逐渐变细. sop 二 ...

  4. nginx中如何设置gzip(总结)

    nginx中如何设置gzip(总结) 一.总结 一句话总结: 真正用的时候,花一小点时间把gzip的各个字段的意思都看一下,会节约大量时间 直接gzip on:在nginx的配置中就可以开启gzip压 ...

  5. arcpy 常用操作

    目录: 通用操作 条件函数 前提: import arcpy from arcpy.sa import * 1.通用操作 设置工作路径:arcpy.env.workspace("path_o ...

  6. 测开之路二十:比较v1和v2

    根据V1和V2的版本号,如果v1>v2,返回1,如果v1<v2,返回-1,除此之外返回0 # 如果v1>v2,返回1,如果v1<v2,返回-1,除此之外返回0v1 = inpu ...

  7. javascript: 禁用右键、文本选择功能、复制按键

    <script type="text/javascript"> //禁用右键.文本选择功能.复制按键 //http://www.jinyuanbao.cn $(docu ...

  8. centos6.2 shutdown now关机进入单用户模式

    在centos5.5时当我们输入 shutdown now 系统会进入关机状态.而centos6.2时并非如此,其他版本不清楚,而进入了单用户模式.(进入系统后想维护可做此操作.)会出现如下提示:(注 ...

  9. vim可视模式

    参考: http://xw2423.byr.edu.cn/blog/archives/232 http://www.pythonclub.org/linux/vim/visual-mode Vim的多 ...

  10. python学习笔记之数据类型、字符编码、文件处理

    1.数据类型 1.数字(int,float) 整形(int):定义 age=20  #本质age=int(20) 浮点类型:salary=3000.3 #本质salary=float(3000.3) ...