专栏首页Python爬虫与数据挖掘关于Scrapy爬虫项目运行和调试的小技巧(上篇)

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

扫除运行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爬虫项目中更为实用的两种调试方法,敬请期待~~

------------------- End ------------------

本文分享自微信公众号 - Python爬虫与数据挖掘(crawler_python),作者:Python进阶者

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-04-08

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 关于Scrapy爬虫项目运行和调试的小技巧(上篇)

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

    Python进阶者
  • 关于Python爬虫,这里有一条高效的学习路径

    如果你仔细观察,就不难发现,懂爬虫、学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样的编程语言提供越来越多的优秀工具,...

    Python进阶者
  • 一篇文章教会你理解Scrapy网络爬虫框架的工作原理和数据采集过程

    Scrapy是一个使用Python编程语言编写的爬虫框架,任何人都可以根据自己的需求进行修改,并且使用起来非常的方便。它可以应用在数据采集、数据挖掘、网络异常用...

    Python进阶者
  • 关于Scrapy爬虫项目运行和调试的小技巧(上篇)

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

    Python进阶者
  • 推荐一条高效的Python爬虫学习路径!

    如果你仔细观察,就不难发现,懂爬虫、学习爬虫的人越来越多,一方面,互联网可以获取的数据越来越多,另一方面,像 Python这样的编程语言提供越来越多的优秀工具,...

    python学习教程
  • Python爬虫与反爬虫左右互搏(带视频)

    爬虫与反爬虫是两类互斥的应用,它们争斗了多年。就像病毒程序与反病毒程序,永远是先有病毒程序,再有反病毒程序一样,爬虫程序总是先诞生,然后网站服务商就会想尽办法不...

    蒙娜丽宁
  • 找python爬虫小项目?github给你准备好了!

    即使我们都是程序员,但我们也并非都会修电脑,都会做酷炫的ppt,都会优化系统卡顿。其实程序员也是分行业、分专业的,就像医生也分内外科、呼吸科、神经科神的。

    efonfighting
  • 请不要污名化爬虫!

    最近有一篇名为《只因写了一段爬虫,公司200多人被抓!》的文章非常火,相信大家应该都看到了。

    云爬虫技术研究笔记
  • 探秘|那些你不知道的爬虫反爬虫套路

    相爱相杀的爬虫与反爬虫 ? 前言 爬虫与反爬虫,是一个很不阳光的行业。 这里说的不阳光,有两个含义。 第一是,这个行业是隐藏在地下的,一般很少被曝光出来。很...

    灯塔大数据
  • 辟谣错误的爬虫说法,使用正确的爬虫姿势

    那篇文章的故事中提到的,是一家名为「巧达数据」的公司,如果之前有关注过相关新闻的朋友应该不难发现,这个公司实际上在3月份的时候就已经被查封了!

    Python猫

扫码关注云+社区

领取腾讯云代金券