首页 > 其他 > 详细

Pycharm中断点调试(debug)scrapy

时间:2021-04-25 23:05:58      阅读:30      评论:0      收藏:0      [点我收藏+]

OutLine

一般写好一个 scrapy 项目,启动方式大多会在命令行里执行:

scrapy crawl “spider-name” (后面有参数就跟参数)

但这么启动不方便去断点调试,不便于快速定位问题、解决问题。

So 记录下自己在pycharm中断点调试的过程。(下文中图片可能看不清,点击即可查看大图)

配置Pycharm

既然想用pycharm断点调试,理应把你的操作都框在pycharm里;

因为 `scrapy crawl 爬虫name` 这种启动方式本质上是走的你Python环境里scrapy库(package)中cmdline.py

(Lib\site-packages\scrapy\cmdline.py)

现在要把这个启动入口放在pycharm里启动;

配置如下:

Step1

点击:`Run->Edit Configurations`

技术分享图片

Step2

增加一个 `python` 配置项目:

技术分享图片

# Name:配置项目的名称
# Script path:scrapy package中的cmdline.py文件路径
# Parameters:启动scrapy爬虫所需参数(也就是传参)
# Python Interpreter:选择所用的Python环境(我用的自己创建的anaconda虚拟环境,找cmdline.py文件时也是在虚拟环境中的site-packages找到,这点要注意)
# Working directory:你scrapy爬虫项目根目录

其余的选项用默认的就行
Parameters 示例:
crawl dceDailyMarket -a curDay=2021-04-08 -a orchestraCallBack=notCallBack -a orchestraCallBackParam=notCallBack 
这是我所用的参数(传的参数),也即:crawl 爬虫名字(代码里的name变量对应的)-a 参数=参数值 -a 参数=参数值 -a 参数=参数值

配置好后点击 ok ,你的pycharm右上方运行工具栏那里,就会有你刚配的这个启动项;

技术分享图片

Step3

在需要调试的代码处加断点,然后点击debug按钮;

代码走到断点处,就会停下来,然后就可以愉快的进行debug了~~

技术分享图片

Step4

跨文件断点调试

上面截图,dceDailyMarket.py 是我的具体爬虫代码文件

代码执行过程中会走 pipline.py 里的代码,想看里面具体怎么走的?
只需要在 pipline.py 里对应处加断点:

技术分享图片

代码中可能还会引用 toolUtils.py 中的方法

如果想 debug 里面的代码,只需要在 toolUtils.py 里加断点即可

这样就可以实时看到想看的信息(变量、对象、报错等……)

END

这样一来,就可以像调试一份普通Python代码那样easy了。

便于快速定位问题、解决问题、提高效率、节省时间~

Pycharm中断点调试(debug)scrapy

原文:https://www.cnblogs.com/bigtreei/p/14701520.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!