扫除运行Scrapy爬虫程序的bug之后,现在便可以开始进行编写爬虫逻辑了。在正式开始爬虫编写之前,在这里介绍四种小技巧,可以方便我们操纵和调试爬虫。

一、建立main.py文件,直接在Pycharm下进行调试

很多时候我们在使用Scrapy爬虫框架的时候,如果想运行Scrapy爬虫项目的话,一般都会想着去命令行中直接执行命令“scrapy crawl crawler_name”,其中crawler_name指的是爬虫的名字,在一开始创建Scrapy爬虫模板的时候就指定了的,而且在该爬虫项目中具有唯一性。但是每次跑到命令行下去执行,看交互的结果,有时候并不是很清晰,所以这里介绍一种方法,可以帮助大家提高开发效率,尤其是调试的时候更是显得方便。

在与爬虫项目的scrapy.cfg文件同级目录下建立一个main.py文件,用于控制整个爬虫项目的执行。

在该文件夹中写入的代码见下图。其中execute函数是内嵌在scrapy中的,调用这个函数可以直接调用该Scrapy工程项目的爬虫脚本,这个函数的执行需要在爬虫项目的父目录下进行。而第7行代码的意思就是获取当前py文件的父目录,省去我们直接复制路径的精力和时间,同时也方便我们将该项目放到其他的平台上去运行,不会报路径的错误。execute函数里边的参数其实就是将Scrapy爬虫执行命令拆分,然后分别以一个字符的方式放到了一个数组中。

之后我们直接运行这个main.py文件便可以调用Scrapy爬虫程序了。

二、多用Debug进行调试,提高开发速度

相信用过Pycharm的小伙伴都看到过Debug这个东东,它的英文意思就是“小虫子”,在Pycharm中的logo也是个小虫子,像是七星瓢虫一样,不过很多小伙伴可能还没有怎么用过,这里简单的介绍给大家,希望大家日后可以多多用到,对于项目的调试十分有帮助。

在进行Debug调试之前,我们需要在我们想要调试的代码左侧进行打断点,断点一般是红色的,打断点的方式很简单,只需要在代码的左侧点击一下左键即可,如下图所示。

断点设置完成之后,便可以去main.py文件进行调试了。在main.py文件点击右键,然后选择“Debug ‘main’”,如下图所示。

之后爬虫程序便开始进行调试,并且会返回一系列结果,如下图所示,可以方便的进行拖拽查看。同时也会在爬虫文件中以绿色的字体进行显示爬虫的结果,很漂亮。

如果想退出或者停止该调试,则点击Pycharm上方选项卡的Run,然后点击“Stop ‘main’”即可,如下图所示。

之后该爬虫程序就会退出调试,恢复正常的Pycharm界面,如下图所示。

关于Scrapy爬虫项目运行和调试两个小技巧先分享到这里,下次将分享Scrapy爬虫项目中更为实用的两种调试方法,敬请期待~~

 

关于Scrapy爬虫项目运行和调试的小技巧(上篇)的更多相关文章

  1. 关于Scrapy爬虫项目运行和调试的小技巧(下篇)

    前几天给大家分享了关于Scrapy爬虫项目运行和调试的小技巧上篇,没来得及上车的小伙伴可以戳超链接看一下.今天小编继续沿着上篇的思路往下延伸,给大家分享更为实用的Scrapy项目调试技巧. 三.设置网 ...

  2. 在Pycharm中运行Scrapy爬虫项目的基本操作

    目标在Win7上建立一个Scrapy爬虫项目,以及对其进行基本操作.运行环境:电脑上已经安装了python(环境变量path已经设置好), 以及scrapy模块,IDE为Pycharm .操作如下: ...

  3. Scrapy(爬虫)基本运行机制

    Scrapy(爬虫)基本运行机制

  4. gdb调试运行时的程序小技巧

    使用gdb调试运行时的程序小技巧 标签: 未分类 gdb pstack | 发表时间:2012-10-15 04:32 | 作者:士豪 分享到: 出处:http://rdc.taobao.com/bl ...

  5. 【Scrapy(四)】scrapy 分页爬取以及xapth使用小技巧

    scrapy 分页爬取以及xapth使用小技巧 这里以爬取www.javaquan.com为例: 1.构建出下一页的url: 很显然通过dom树,可以发现下一页所在的a标签   2.使用scrapy的 ...

  6. python3 scrapy爬虫项目的诞生

    前提安装好scrapy模块最好 requests和bs4模块都安装好 可以概括为五个步骤 步骤一:新建一个项目 无论你用windows也好,linux也罢,在cmd或者终端 切换到目标文件夹,然后输入 ...

  7. Scrapy 爬虫项目框架

    1. Scrapy 简介 2. Scrapy 项目开发介绍 3. Scrapy 项目代码示例 3.1 setting.py:爬虫基本配置 3.2 items.py:定义您想抓取的数据 3.3 spid ...

  8. Python+Selenium进行UI自动化测试项目中,常用的小技巧4:日志打印,longging模块(控制台和文件同时输出)

    在前段时间,为了给项目中加入日志功能,就想到了 logging 模块,百度logging一大推,都是各种复制的,并没有找到自己想要的结果:我的目的很简单,就是:在把日志写入文件的同时在控制台输出,更加 ...

  9. 谷歌(Chrome)浏览器调试JavaScript小技巧

    谷歌浏览器不仅仅可以用来上网,对于开发人员来说,它更像是一款强大的开发辅助工具. 工欲善其事必先利其器,接下来笔者给大家分享一些Chrome的使用方法. 假如读者了解如何在Chrome中添加JavaS ...

随机推荐

  1. python3 django动态分页引发的list切片下标越界问题

    起先是扒了一个包,动态分页的,但这个包分页之前要加载全部的数据,我这东西后台是个爬虫,不一定浏览的完所以这么做有点浪费资源,于是我改造了一下. # :param obj_count: 获得 条目总数# ...

  2. ZBrush中Blob点滴笔刷介绍

    对于ZBrush®来说,笔刷的使用时至关重要的,ZBrush中给我们提供了越来越多的笔刷的同时,我们也要根据经验来合理选择笔刷.本文内容小编将分享Blob点滴笔刷的简单介绍,该笔刷在使用时笔头犹如一股 ...

  3. Shell(四)函数

    函数 linux shell 可以用户定义函数,然后在shell脚本中可以随便调用. 一.格式 shell中函数的定义格式如下: [ function ] funname [()] { action; ...

  4. myeclipse 字体设置为UTF-8

    将myeclipse设置成utf-8格式的方式如下: 1.windows->Preferences打开"首选项"对话框,如图: 2.点击左侧导航树,导航到general-&g ...

  5. spring mvc 下载的时候中文文件名不显示

    Headers.add("Content-Disposition", "attachment;filename=" + new String(file.getB ...

  6. Git:与eclipse搭配使用

    Git:与eclipse搭配使用 1)工程初始化为本地库 工程 ——>右键 ——>Team ——Share Project 在该目录下创建了本地库 这里可以设置用户签名 2)Eclipse ...

  7. Vue PC端框架

    Vue PC端框架 1. Element 中文文档:http://element-cn.eleme.io/#/zh-CN github地址:https://github.com/ElemeFE/ele ...

  8. promise的原理

    promise的原理 一旦状态改变,就不会再变,任何时候都可以得到这个结果.Promise 对象的状态改变,只有两种可能:从 pending 变为 fulfilled 和从 pending 变为 re ...

  9. 简述vuex的数据传递流程

    简述vuex的数据传递流程 当组件进行数据修改的时候我们需要调用dispatch来触发actions里面的方法.actions里面的每个方法中都会有一个commit方法,当方法执行的时候会通过comm ...

  10. 数据库ifnull方法

    IFNULL(expr1,expr2)如果expr1不是NULL,IFNULL()返回expr1,否则它返回expr2.IFNULL()返回一个数字或字符串值.例如: ifnull() 如果sum(t ...