(一)scrapy 安装及新建爬虫项目并运行
> 参考:https://www.cnblogs.com/hy123456/p/9847570.html
在 pycharm 中并没有创建 scrapy 工程的选项,需要手动创建。
这里就有两种创建 scrapy 项目的方式,第一种是先手工创建 scrapy 项目,然后导入到 pycharm 中;第二种是直接在 pycharm 中利用其中的命令行窗口创建项目(我使用的是这种,比较方便);
1. 手工创建导入方式
创建一个用于当前项目的虚拟空间:
virtualenv --no-site-packages ScrapyLearning
启动当前虚拟空间:
# 进入当前虚拟空间的相关目录下,windows下在:ScrapyLearning/Scripts/
activate # 激活当前虚拟空间安装
scrapy:pip install -i https://pypi.douban.com/simple/ scrapy # 使用豆瓣源
使用
scrapy创建scrapy项目:(千万注意不要直接在script目录下新建项目)scrapy startproject ArticleSpider # ArticleSpider为项目名
将
ArticleSpider项目导入pycharm。
2. pycharm 中创建
pycharm中新建工程,并选择创建一个用于当前项目的虚拟空间;在
pycharm的下端的Terminal中输入以下命令以安装scrapy(如果没有的话):pip install -i https://pypi.douban.com/simple/ scrapy # 使用豆瓣源
在
pycharm的下端的Terminal中输入:scrapy startproject ArticlePaqu
便会在当前项目目录下生成
ArticlePaqu文件夹,这个便是scrapy项目文件夹。
3.创建一个小爬虫
创建一个单个小爬虫,爬取 scrapy 官方指定的一个示例页面:example.com。
命令行或 pycharm 的 Termina 窗口中输入(这里需要进入前面新建的项目目录下):
scrapy genspider example 'www.example.com'
便会在 spider 文件夹下创建一个爬虫 python 文件,并自动写入初始代码:
# -*- coding: utf-8 -*-
import scrapy
class ExampleSpider(scrapy.Spider):
name = 'example'
allowed_domains = ['example.com']
start_urls = ['http://example.com/']
def parse(self, response):
pass
4.运行爬虫
4-1.命令行或 pycharm 的 Terminal 中输入:
scrapy crawl example
即可启动 example 爬虫。
4-2.直接通过运行 pycharm 中 python 文件的方式运行:
需要在 scrapy 项目的根目录下创建一个 main.py 文件:
from scrapy.cmdline import execute
import sys
import os # 用来获取路径的模块
sys.path.append(os.path.dirname(os.path.abspath(__file__)))
execute(['scrapy', 'crawl', 'example'])
即相当于将
scrapy crawl example
命令分成三段组成 list 放入 python 执行程序中的 execute 函数中了。
然后就可以通过右键 run main.py 函数即可运行 example 爬虫。
(一)scrapy 安装及新建爬虫项目并运行的更多相关文章
- 如何利用scrapy新建爬虫项目
抓取豆瓣top250电影数据,并将数据保存为csv.json和存储到monogo数据库中,目标站点:https://movie.douban.com/top250 一.新建项目 打开cmd命令窗口,输 ...
- scrapy抓取拉勾网职位信息(一)——scrapy初识及lagou爬虫项目建立
本次以scrapy抓取拉勾网职位信息作为scrapy学习的一个实战演练 python版本:3.7.1 框架:scrapy(pip直接安装可能会报错,如果是vc++环境不满足,建议直接安装一个visua ...
- Django安装 测试、导入项目以及运行开发服务器
安装Django 下载Django包,解压缩. CMD 进入解压路径下. 执行:python setup.py install 增加环境变量: C:\Python27\Scripts 测试djang ...
- eclipse新建web项目,运行后在tomcat安装目录下webapps中没有该项目
一.发现问题在eclipse中新建Dynamic Web Project,配置好本地的tomcat并写好代码后选择Run on Server,但运行后发现在tomcat的安装目录下的webapps并没 ...
- 安卓开发第一记 android stdio 安装后 新建测试项目报错
Failed to resolve:com.android.support:appcompat-v7:报错处理 你在使用android studio时是否也出现过上图的报错,你还在为它的出现烦恼? ...
- python爬虫框架—Scrapy安装及创建项目
linux版本安装 pip3 install scrapy 安装完成 windows版本安装 pip install wheel 下载twisted,网址:http://www.lfd.uci.edu ...
- 在windows下如何新建爬虫虚拟环境和进行scrapy安装
Scrapy是Python开发的一个快速.高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy吸引人的地方在于它是一个框架,任何人都可以根据需求方便的修改.Sc ...
- 在Pycharm中运行Scrapy爬虫项目的基本操作
目标在Win7上建立一个Scrapy爬虫项目,以及对其进行基本操作.运行环境:电脑上已经安装了python(环境变量path已经设置好), 以及scrapy模块,IDE为Pycharm .操作如下: ...
- python3 scrapy爬虫项目的诞生
前提安装好scrapy模块最好 requests和bs4模块都安装好 可以概括为五个步骤 步骤一:新建一个项目 无论你用windows也好,linux也罢,在cmd或者终端 切换到目标文件夹,然后输入 ...
随机推荐
- actf2020upload
actf2020upload .php后缀过滤 1.上传文件,要求后缀为.png/.gif/.jpg 2.抓包,后缀改成.phtml后放行,上传成功,访问地址,根目录下找到flag
- 【感受】android + opencv + umat + opencl使用感受
近期编译了android下支持opencl的opencv,使用opencl能力的关键是用cv::UMat替换cv::Mat. 实际使用后发现坑很多,非常不成熟,不推荐使用这种方式来提升实际产品的性能. ...
- dp问题解题思路
[基本问题单元的定义]这取决于你所查看问题的角度,找到一个划分,推进问题的角度十分重要.作者找到的方式是dp[ i ][ j ],用来表示 substring( i , j),然后站在这个角度,假设s ...
- openstack,docker,mesos,Kubernetes(k8s)
作者:张乾链接:https://www.zhihu.com/question/62985699/answer/204233732来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明 ...
- MySql下载与安装(部署)
一:MySQL介绍 1.MySQL简介 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下公司.MySQL 最流行的关系型数据库管理系统,在 WEB ...
- IBM MQ常用运维命令
创建队列管理器 crtmqm –q QMgrName -q是指创建缺省的队列管理器 删除队列管理器 dltmqm QmgrName 启动队列管理器 strmqm QmgrName 如果是启动默认的队列 ...
- k8s基本概念,资源对象
kubernetes里的master指的是集群控制节点 master负责是整个集群的管理和控制 kubernetes3大进程 API server 增删改查操作的关键入口 controller man ...
- Lesson3——NumPy 数据类型
NumPy 教程目录 NumPy 数据类型 numpy 支持的数据类型比 Python 内置的类型要多很多,基本上可以和 C 语言的数据类型对应上,其中部分类型对应为 Python 内置的类型. 下表 ...
- 关于将px转换为vw vh的解决方案
什么是vw(Viewport Width)和vh(Viewport Height)? vw和vh是前端开发中的一个动态单位,是一个相对于网页视口的单位. 系统会将视口的宽度和高度分为100份,1vw占 ...
- 再见丑陋的 SwaggerUI,这款开源的API文档生成神器界面更炫酷,逼格更高!
一般在使用 Spring Boot 开发前后端分离项目的时候,都会用到 Swagger.Swagger 是一个规范和完整的框架,用于生成.描述.调试和可视化 RESTful 风格的 Web API 服 ...