pycharm下打开、执行并调试scrapy爬虫程序的方法


Posted in Python onNovember 29, 2017

首先得有一个Scrapy项目,我在Desktop上新建一个Scrapy的项目叫test,在Desktop目录打开命令行,键入命令:scrapy startproject test1

pycharm下打开、执行并调试scrapy爬虫程序的方法

目录结构如下:

pycharm下打开、执行并调试scrapy爬虫程序的方法

pycharm下打开、执行并调试scrapy爬虫程序的方法

pycharm下打开、执行并调试scrapy爬虫程序的方法

打开Pycharm,选择open

pycharm下打开、执行并调试scrapy爬虫程序的方法

选择项目,ok

pycharm下打开、执行并调试scrapy爬虫程序的方法

打开如下界面之后,按alt + 1, 打开project 面板

pycharm下打开、执行并调试scrapy爬虫程序的方法

pycharm下打开、执行并调试scrapy爬虫程序的方法

在test1/spiders/,文件夹下,新建一个爬虫spider.py, 注意代码中的name="dmoz"。这个名字后面会用到。

pycharm下打开、执行并调试scrapy爬虫程序的方法

在test1目录和scrapy.cfg同级目录下面,新建一个begin.py文件(便于理解可以写成main.py),注意箭头2所指的名字和第5步中的name='dmoz'名字是一样的。

from scrapy import cmdline
cmdline.execute("scrapy crawl dmoz".split())

pycharm下打开、执行并调试scrapy爬虫程序的方法

7. 上面把文件搞定了,下面要配置一下pycharm了。点击Run->Edit Configurations

pycharm下打开、执行并调试scrapy爬虫程序的方法

8. 新建一个运行的python模块

pycharm下打开、执行并调试scrapy爬虫程序的方法

9. Name:改成spider; script:选择刚才新建的那个begin.py文件;Working Direciton:改成自己的工作目录

pycharm下打开、执行并调试scrapy爬虫程序的方法

10. 至此,大功告成了,点击下图,右上角的按钮就能运行了。

pycharm下打开、执行并调试scrapy爬虫程序的方法

调试

可以在其他代码中设置断点,就可以debug运行

pycharm下打开、执行并调试scrapy爬虫程序的方法

pycharm下打开、执行并调试scrapy爬虫程序的方法

遇到问题

1. Unknown command: crawl

调试运行,断点并未命中,控制台输出信息如下:

H:\Python\Python36\python.exe "H:\Program Files (x86)\JetBrains\PyCharm Community Edition 4.5.4\helpers\pydev\pydevd.py" --multiproc --client 127.0.0.1 --port 59810 --file H:/Python/Python36/Lib/site-packages/scrapy/cmdline.py crawl quotes -o quotes.jl
pydev debugger: process 4740 is connecting

Connected to pydev debugger (build 141.3058)
Scrapy 1.3.2 - no active project

Unknown command: crawl

Use "scrapy" to see available commands

Process finished with exit code 2

工作目录设置有误,造成无法识别 scrapy 命令,按照上文所说,将工作目录设置为包含 scrapy.cfg,重新运行,问题解决。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python迭代器实例简析
Sep 25 Python
Python实现类似jQuery使用中的链式调用的示例
Jun 16 Python
Python的时间模块datetime详解
Apr 17 Python
Python3结合Dlib实现人脸识别和剪切
Jan 24 Python
解决python xx.py文件点击完之后一闪而过的问题
Jun 24 Python
12个步骤教你理解Python装饰器
Jul 01 Python
Python 占位符的使用方法详解
Jul 10 Python
Django框架自定义模型管理器与元选项用法分析
Jul 22 Python
python制作朋友圈九宫格图片
Nov 03 Python
Python包,__init__.py功能与用法分析
Jan 07 Python
Python控制台输出时刷新当前行内容而不是输出新行的实现
Feb 21 Python
python 模拟在天空中放风筝的示例代码
Apr 21 Python
Python快速排序算法实例分析
Nov 29 #Python
Python3学习urllib的使用方法示例
Nov 29 #Python
Python实现的选择排序算法示例
Nov 29 #Python
Python实现的桶排序算法示例
Nov 29 #Python
[原创]教女朋友学Python(一)运行环境搭建
Nov 29 #Python
对变量赋值的理解--Pyton中让两个值互换的实现方法
Nov 29 #Python
基于Python函数的作用域规则和闭包(详解)
Nov 29 #Python
You might like
解析mysql 表中的碎片产生原因以及清理
2013/06/22 PHP
简单的php文件上传(实例)
2013/10/27 PHP
php学习笔记之字符串常见操作总结
2019/07/16 PHP
php实现的简单多进程服务器类完整示例
2020/02/01 PHP
javascript学习网址备忘
2007/05/29 Javascript
js 效率组装字符串 StringBuffer
2009/12/23 Javascript
Javascript 变量作用域 两个可能会被忽略的小特性
2010/03/23 Javascript
js的匿名函数使用介绍
2013/12/11 Javascript
JS判断变量是否为空判断是否null
2014/07/25 Javascript
JS提交form表单实例分析
2015/12/10 Javascript
jQuery1.9+中删除了live以后的替代方法
2016/06/17 Javascript
js仿微信语音播放实现思路
2016/12/12 Javascript
Vue组件之全局组件与局部组件的使用详解
2017/10/09 Javascript
vue生成token保存在客户端localStorage中的方法
2017/10/25 Javascript
详解React 的几种条件渲染以及选择
2018/10/23 Javascript
多个vue子路由文件自动化合并的方法
2019/09/03 Javascript
React+Redux实现简单的待办事项列表ToDoList
2019/09/29 Javascript
你知道JavaScript Symbol类型怎么用吗
2020/01/08 Javascript
[00:27]DOTA2荣耀之路2:Patience from zhou!
2018/05/24 DOTA
python list排序的两种方法及实例讲解
2017/03/20 Python
Python异常处理操作实例详解
2018/08/28 Python
python学习之hook钩子的原理和使用
2018/10/25 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
在python中利用try..except来代替if..else的用法
2019/12/19 Python
html5 视频播放解决方案
2016/11/06 HTML / CSS
美国电视购物:QVC
2017/02/06 全球购物
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
微软加拿大官方网站:Microsoft Canada
2019/04/28 全球购物
经理秘书找工作求职信
2013/12/19 职场文书
旷课检讨书大全
2014/01/21 职场文书
中学生爱国演讲稿
2014/09/05 职场文书
借钱欠条怎么写
2015/07/03 职场文书
学生会自荐信
2019/05/16 职场文书
SpringDataJPA在Entity中常用的注解介绍
2021/12/06 Java/Android
golang定时器
2022/04/14 Golang
MySQL数据库安装方法与图形化管理工具介绍
2022/05/30 MySQL