scrapy安装过程问题解决、新建项目、调试断点
一、安装问题
1. 下载速度太慢
使用国外源,下载速度很慢,可以考虑使用豆瓣的镜像下载
pip install -i https://pypi.douban.com/simple/ scrapy
2. 安装scrapy需要Microsoft Visual C++ 14.0 支持
在下面下载在线安装(可能需要半个小时以上,好几个G),注意安装时选择自定义安装,默认好像是win8.1,记得改为win10的
Download the Visual C++ Build Tools (standalone C++ compiler, libraries and tools)
二、新建scrapy项目
1. cmd新建项目
(SCRAPY~) F:\Python Script\Scrapy>scrapy startproject ArticleSpider
新建完后,就会生成项目,下面这个是Pycharm界面,怎么进入这个界面呢?File->Open 然后选择创建的项目文件夹 ArticleSpider

2. 创建初始模板
创建模板之前,要cd进入项目
(SCRAPY~1) F:\Python Script\Scrapy>cd ArticleSpider (SCRAPY~1) F:\Python Script\Scrapy\ArticleSpider>scrapy genspider jobbole blog.jobbole.com
#jobbole 是我们的爬虫名
#blog.jobbole.com 是我们爬虫开始的页面

打开看一下,里面的代码

3. 选择开发环境
我们打开项目后,还没有选择我们的开发环境
-1. File->Setting,操作如图,选择我们之前搭建的Python3.5虚拟环境:scrapy_py3

4. 尝试运行爬虫
运行前,先安装pypiwin32
(SCRAPY~1) F:\Python Script\Scrapy\ArticleSpider>pip install -i https://pypi.douban.com/simple/ pypiwin32
运行
(SCRAPY~1) F:\Python Script\Scrapy\ArticleSpider>scrapy crawl jobbole
5. 改配置
在setting.py里改下配置

6. 调试
调试断点的简单说明,看这里:PyCharm 教程(五)断点 调试
继续调试快捷键是,F8
由于pycharm没有scrapy的模板,所以是没办法调试的,但是我们通过自定义一个main文件,来调试
#main.py
#coding:utf-8 from scrapy.cmdline import execute
import os,sys sys.path.append(os.path.dirname(os.path.abspath(__file__))) execute(['scrapy','crawl','jobbole'])
在jobbole.py设置断点

点下右上角的甲虫图标,或者快捷键Shift+F9 ,调试main.py
调试完成后会自动跳到jobbole.py文件的断点处。
我们可以查看下变量信息
看看,response里的变量

7. scrapy shell 调试
在虚拟环境中venv,进入scrapy项目所在的目录
(SCRAPY~1) F:\Python Script\Scrapy\ArticleSpider>
键入如下命令,进入scrapy shell环境
(SCRAPY~1) F:\Python Script\Scrapy\ArticleSpider>scrapy shell http://blog.jobbole.com/111121/
后面的url,看你要调试哪个网址,就填哪个
进入后,就可以发现有这么多变量可以使用了,这里我们主要关注response

利用scrapy shell带上User-Agent
scrapy shell -s USER_AGENT:'拷贝进来' https://www.zhihu.com
scrapy增加表头
$ scrapy shell
...
...
>>> from scrapy import Request
>>> req = Request('yoururl.com', headers={"header1":"value1"})
>>> fetch(req)
scrapy安装过程问题解决、新建项目、调试断点的更多相关文章
- Nodejs新建博客练习(一)安装express并新建项目
安装express npm install -g express-generator 新建工程 express blog //新建项目 cd blog && npm install / ...
- 命令行安装django以及新建项目及应用
1:安装django项目,使用pip命令进行安装,默认安装的是最高版本,可以使用pip install django==1.1.11进行指定版本安装 2:新建django项目 2.1:首先切换到创建项 ...
- robot framework-requests库安装过程问题解决
这几天本想研究下用robotframework+HTTP library (Requests)来做接口测试(http协议), 安装完Requests库后,在RIDE里导入该库时显示是红色,即导入失败( ...
- 安装Eclipse(android)新建项目时遇到的问题
---恢复内容开始--- 解决方案: 我先删掉了新建的项目,重新建立项目时 将API都选成相同的API19:... 然后就成功了 ---恢复内容结束---
- Visual Studio 2017 安装过程问题解决
VS已经发布了两三天了,我也着手安装,但是折腾了两个晚上,怎么都到不了安装界面(选择模块的界面),各种尝试,各种重启,也并不顶什么卵用~ 后来经过各种查LOG,发现我电脑访问不了https://dow ...
- opencv3.4+vs2015+win10安装过程问题解决
在使用cmake configure生成vs的工程文件时,有几个第三方的库和文件会频繁下载不成功,分别是: ffmpeg_version.cmake opencv_ffmpeg.dll opencv_ ...
- vs2008安装mvc3后新建项目报错 -- 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
解决方案: 找到主目录的.csproj文件,用文字编辑器打开你找到它找到 <Reference Include="System.Web.WebPages" /> &l ...
- Python -- Scrapy 框架简单介绍(Scrapy 安装及项目创建)
Python -- Scrapy 框架简单介绍 最近在学习python 爬虫,先后了解学习urllib.urllib2.requests等,后来发现爬虫也有很多框架,而推荐学习最多就是Scrapy框架 ...
- Windows下安装Scrapy方法及常见安装问题总结——Scrapy安装教程
这几天,很多朋友在群里问Scrapy安装的问题,其实问题方面都差不多,今天小编给大家整理一下Scrapy的安装教程,希望日后其他的小伙伴在安装的时候不再六神无主,具体的教程如下. Scrapy是Pyt ...
随机推荐
- MinerHtmlThread.java 爬取页面线程
MinerHtmlThread.java 爬取页面线程 package com.iteye.injavawetrust.miner; import org.apache.commons.logging ...
- Java进阶(二十三)java中long类型转换为int类型
java中long类型转换为int类型 由int类型转换为long类型是向上转换,可以直接进行隐式转换,但由long类型转换为int类型是向下转换,可能会出现数据溢出情况: 主要以下几种转换方法,供参 ...
- 《java入门第一季》之面向对象(内部类到底在哪里?)
/* 内部类概述: 把类定义在其他类的内部,这个类就被称为内部类. 举例:在类A中定义了一个类B,类B就是内部类. 内部的访问特点: A:内部类可以直接访问外部类的成员,包括私有. B:外部类要访问内 ...
- android Timer与TimerTask的相关操作
项目上面的部分操作需要使用到定时器进行周期性的控制.网络上面对于定时器的操作通常有三种实现方法. 我是通过Timer与TimerTask相结合实现的定时器功能.具体实现过程如下: 第一步,得到Time ...
- 好看的dialog,sweet Alert Dialog 导入Android Studio
系统自带的dialog实在是丑到无法忍受.所以找到了一款比较好的第三方dialog. github 地址如下:https://github.com/pedant/sweet-alert-dialog ...
- Android中怎样获取SD卡路径
很多时候我们需要将我们的数据或者apk保存到SD卡中,但是使用绝对路径可能会遇到错误,怎样解决这个问题呢? 可以通过以下方法获取SD卡的路径: Environment.getExternalS ...
- 四种简单的图像显著性区域特征提取方法-----AC/HC/LC/FT。
四种简单的图像显著性区域特征提取方法-----> AC/HC/LC/FT. 分类: 图像处理 2014-08-03 12:40 4088人阅读 评论(4) 收藏 举报 salient regio ...
- php引用传值详解
php的引用(就是在变量或者函数 .对象等前面加上&符号) 在PHP 中引用的意思是:不同的名字访问同一个变量内容. 与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容在内存中存 ...
- C标准中关于空指针的那些事
1 C标准不保证用所有二进制位都为0的变量来表示空指针,但它保证空指针与任何对象或函数的指针都不相等,取地址操作符&永远也不会返回空指针: 2 C标准称在指针上下文中的"值为0的整形 ...
- rails常用命令备忘
rails new xxx 创建一个新rails项目 rails generate scaffold xxx 创建表模型,视图,控制器和迁移的"脚手架" rake db:migra ...