如何利用scrapy这个框架来完成一个简单的爬虫项目并用pycharm等IDE来进行调试呢?
首先要搭建虚拟环境,不懂虚拟环境搭建的详细步骤可参见另一篇博客:http://blog.csdn.net/xx790008409/article/details/78461929
搭建完成虚拟环境过后,我们新建一个针对于此项目的虚拟环境,我们要使用Python3来创建虚拟环境(博主用的virtualenv wrapper,则虚拟环境放在E:/Envs这个文件夹中),我们给虚拟环境取名为virtual-test,等待虚拟环境创建完成。
然后我们需要安装scrapy框架:
进入刚刚搭建的虚拟环境,执行pip install scrapy命令,等待执行完成。
如果觉得下载速度过慢,可使用豆瓣源来安装:pip install -i https://pypi.douban.com/simple/ scrapy,执行并等待其安装完成
安装完scrapy框架后,进入项目存放的文件夹(博主在这里新建了一个文件夹,叫做project-test文件夹),使用命令scrapy startproject SpiderTest,这里的 SpiderTest是项目文件名(注意,这个项目文件名不能有连字符这样的符号,只能是字母,数字和下划线,且开头为字母)。创建好项目后,根据下面的提示信息,首先进入SpiderTest项目文件,然后输入命令scrapy genspider jobbole jobbole.com,这里jobbole是其中的.py文件名,jobbole.com是要爬取的网站的域名。
注意:如果是windows,则还需继续执行一条命令:
pip install -i https://pypi.douban.com/simple pypiwin32
防止后续调试出现错误。
好了,现在我们的项目就基本创建成功,现在我们用pycharm来配置和调试一下这个令人激动的项目的开端吧。
- 打开pycharm,在菜单栏找到File-Open
- 找到项目存放地点,点击OK
3.在菜单栏里面找到File-Settings,在搜索栏里输入interpreter,在右侧的project interpreter中选择刚刚创建的虚拟环境,点击OK。
4.在项目中(SpiderTest)新建一个Python File 来执行我们的调试过程,文件名为main.py。(注意这里博主新建main文件的位置错误,应当在SpiderTest 中新建,而不是在项目存放文件夹中新建)
在main.py中输入如下代码:
from scrapy.cmdline import execute
import os
import sys
#得到main文件的路径
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
#执行命令scrapy crawl jobbole
execute(['scrapy', 'crawl', 'jobbole'])
点击调试:
正确执行!
注意:在settings.py文件中,要进行后续的爬取,需要把ROBOTSTXT_OBEY = False
这一行去掉注释
这样我们就创建了一个基础的爬虫项目并用IDE执行了简单的配置和调试功能。
下次学习了新知识过后继续与小伙伴们分享!
文中若有错误,或按照我的方法无法执行或执行错误,欢迎在下面评论留言。