(一)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或者终端 切换到目标文件夹,然后输入 ...
随机推荐
- 小白也能看懂的Redis教学基础篇——做一个时间窗限流就是这么简单
不知道ZSet(有序集合)的看官们,可以翻阅我的上一篇文章: 小白也能看懂的REDIS教学基础篇--朋友面试被SKIPLIST跳跃表拦住了 书接上回,话说我朋友小A童鞋,终于面世通过加入了一家公司.这 ...
- 微信小程序云开发指南
一.初识云开发 官方文档 小程序·云开发是微信团队联合腾讯云推出的专业的小程序开发服务. 开发者可以使用云开发快速开发小程序.小游戏.公众号网页等,并且原生打通微信开放能力. 开发者无需搭建服务器,可 ...
- MongDB日志分析
Result文件数据说明: Ip:106.39.41.166,(城市) Date:10/Nov/2016:00:01:02 +0800,(日期) Day:10,(天数) Traffic: 54 ,(流 ...
- 【记录一个问题】thanos receiver在tsdb切换期间,导致remote write接口失败增加
如图:配置了thanos receiver落盘的时间周期为10分钟,结果导致在切换tsdb期间,remote write接口的失败率增高. 目前看来,解决办法就是上游增加重试.
- Superset SSO改造和自定义宏命令
目录 背景 关于Superset 需要解决的问题 定制化改造 准备环境 改造OAuth SSO 安装依赖 配置SSO 添加自定义的SecurityManager 运行一下吧 自定义宏命令 开启配置 添 ...
- cp 不提示按y
yes|cp index.html.j2 yml -rf \cp index.html.j2 yml/ 两个效果是一样的
- zabbix-mongodb监控脚本(高性能、低占用)
Zabbix调用脚本以实现对MongoDB的监控! 本脚本支持对服务存活状态.副本集.性能指标共计25个监控项! 使用mongostat和"echo rs.status()["me ...
- 安装Windows11操作系统(不需要绕过TPM检测脚本等) - 初学者系列 - 学习者系列文章
Windows11操作系统是去年微软公司的最新力作.对于该操作系统的安装,网上有很多的教程了.这次主要写的是不需要绕过TPM检测操作安装Windows11操作系统. 1. 制作启动U盘: ...
- Android开发-适配器
适配器非常关键,它是连接页面和和数据源之间的桥梁,通过适配器,可以将数据库中的数据显示在页面上. 记账本适配器 记账类型选择适配器 日历选择适配器 还有图标适配器等
- 学习Java第3天
今天所做的工作: 1.循环结构 2.字符串 3.数组 4.面向对象概述 明天工作安排: 1.类和对象 2.包装类 所遇到的问题及解决方法: 1.循环foreach语句 2.字符串初始化与c++的差异 ...