Python3.5下安装&测试Scrapy
1、引言
Scrapy框架结构清晰,基于twisted的异步架构可以充分利用计算机资源,是做爬虫必备基础,本文将对Scrapy的安装作介绍。
2、安装lxml
2.1 下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 选择对应python3.5的lxml库

2.2 如果pip的版本过低,先升级pip:
python -m pip install -U pip
2.3 安装lxml库(先将下载的库文件copy到python的安装目录,按住shift键并鼠标右击选择“在此处打开命令窗口”)
pip install lxml-4.1.1-cp35-cp35m-win_amd64.whl
看到出现successfully等字样说明按章成功。
3、 安装Twisted库
3.1 下载链接:https://www.lfd.uci.edu/~gohlke/pythonlibs/#twisted 选择对应python3.5的库文件

3.2 安装
pip install Twisted-17.9.0-cp35-cp35m-win_amd64.whl
看到出现successfully等字样说明按章成功。
Note:部分机器可能安装失败,可以尝试将 Twisted-17.9.0-cp35-cp35m-win_amd64.whl文件移动到 $python/Scripts/ 目录下,重新安装。
4、安装Scrapy
twisted库安装成功后,安装scrapy就简单了,在命令提示符窗口直接输入命令:
pip install scrapy
看到出现successfully等字样说明按章成功。
5、Scrapy测试
5.1 新建项目
先新建一个Scrapy爬虫项目,选择python的工作目录(我的是:H:\PycharmProjects 然后安装Shift键并鼠标右键选择“在此处打开命令窗口”),然后输入命令:
scrapy startproject allister

对应目录会生成目录allister文件夹,目录结构如下:
└── allister
├── allister
│ ├── __init__.py
│ ├── items.py
│ ├── pipelines.py
│ ├── settings.py
│ └── spiders
└── scrapy.cfg 简单介绍个文件的作用:
# -----------------------------------------------
scrapy.cfg:项目的配置文件;
allister/ : 项目的python模块,将会从这里引用代码
allister/items.py:项目的items文件
allister/pipelines.py:项目的pipelines文件
allister/settings.py :项目的设置文件
allister/spiders : 存储爬虫的目录
5.2 修改allister/items.py文件:
# -*- coding: utf-8 -*- # Define here the models for your scraped items
#
# See documentation in:
# https://doc.scrapy.org/en/latest/topics/items.html import scrapy class AllisterItem(scrapy.Item):
name = scrapy.Field()
level = scrapy.Field()
info = scrapy.Field()
5.3 编写文件 AllisterSpider.py
# !/usr/bin/env python
# -*- coding: utf-8 -*-
# @File : AllisterSpider.py
# @Author: Allister.Liu
# @Date : 2018/1/18
# @Desc : import scrapy
from allister.items import AllisterItem class ItcastSpider(scrapy.Spider):
name = "ic2c"
allowed_domains = ["http://www.itcast.cn"]
start_urls = [
"http://www.itcast.cn/channel/teacher.shtml#ac"
] def parse(self, response):
items = [] for site in response.xpath('//div[@class="li_txt"]'):
item = AllisterItem() t_name = site.xpath('h3/text()')
t_level = site.xpath('h4/text()')
t_desc = site.xpath('p/text()') unicode_teacher_name = t_name.extract_first().strip()
unicode_teacher_level = t_level.extract_first().strip()
unicode_teacher_info = t_desc.extract_first().strip() item["name"] = unicode_teacher_name
item["level"] = unicode_teacher_level
item["info"] = unicode_teacher_info yield item
编写完成后复制至项目的 \allister\spiders目录下,cmd选择项目根目录输入以下命令:
scrapy crawl ic2c -o itcast_teachers.json -t json
抓取的数据将以json的格式存储在ic2c_infos.json文件中;

如果出现如下错误请看对应解决办法:
Scrapy运行错误:ImportError: No module named win32api
Python3.5下安装&测试Scrapy的更多相关文章
- Python3.X下安装Scrapy
Python3.X下安装Scrapy (转载) 2017年08月09日 15:19:30 jingzhilie7908 阅读数:519 标签: python 相信很多同学对于爬虫需要安装Scrap ...
- centos7 python3.5 下安装paramiko
centos7 python3.5 下安装paramiko 安装开发包 yum install openssl openssl-devel python-dev -y 安装pip前需要前置安装setu ...
- 在python3.5下安装scrapy包
此前scrapy只支持python2.x 但是最新的1.1.0rc1已结开始支持py3了 如果电脑上安装了scrapy的依赖包,诸如lxml.OpenSSL 1.你直接下载Scrapy-1.1.0rc ...
- python3 linux下安装
1.下载 https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 2.安装 上传到linux服务器 #进入上传文件的目录 cd /app/pr ...
- 在Python3.5下安装和测试Scrapy爬网站
1. 引言 Scrapy框架结构清晰,基于twisted的异步架构可以充分利用计算机资源,是爬虫做大的必备基础.本文将讲解如何快速安装此框架并使用起来. 2. 安装Twisted 2.1 同安装Lxm ...
- win7中python3.4下安装scrapy爬虫框架(亲测可用)
貌似最新的scrapy已经支持python3,但是错误挺多的,以下为在win7中的安装步骤: 1.首先需要安装Scrapy的依赖包,包括parsel, w3lib, cryptography, pyO ...
- 在Windows10 64位 Anaconda4 Python3.5下安装XGBoost
系统环境: Windows10 64bit Anaconda4 Python3.5.1 软件安装: Git for Windows MINGW 在安装的时候要改一个选择(Architecture选择x ...
- Windows python3.3下安装BeautifulSoup
首先在官网下载:http://www.crummy.com/software/BeautifulSoup/#Download BeautifulSoup在版本4以上都开始支持python3了,所以就下 ...
- 关于在Python3.6下安装MySQL-python,flask-sqlalchemy模块的问题
这周末在学习Flask框架的时候,有需要安装MySQL-python模块,一开始用pip安装: pip install MySQL-python 但是安装的时候报错了: error: command ...
随机推荐
- 如何连接别人电脑上的Oracle数据库--duende99
需要一些前提条件: 1.对方的主机能被连接(如在同一局域网内) 2.需要知道对方数据库IP.端口号.服务名 3.需要知道对方提供的管理数据库的用户名及密码 连接方法: 1.在本地的oracle安装目录 ...
- C#:StreamReader读取.CSV文件(转换成DataTable)
using System.Data; using System.IO; /// <summary> /// Stream读取.csv文件 /// </summary> /// ...
- [100个改变摄影的伟大观念].(英)玛瑞恩.高清扫描版.pdf
下载地址 :https://u253469.ctfile.com/fs/253469-229765365
- 【java】工厂模式Factory,利用反射改进
package 反射; interface Product{ public void produce(); } class socks implements Product{ @Override pu ...
- sqlserver 存储过程 递归查询分组+hierarchyid重建会员关系
CREATE PROCEDURE [dbo].[GetGroupInfo] @s_code NVARCHAR() = --会员卡号 AS BEGIN declare @p int; --查询唯一性结果 ...
- HTML基础教程-简介
关于html5笔记前言 之前有在W3school学习过html5以及javascript.为了和大家一块学习,为了回顾这些遗忘的基础,现在我把之前自己整理的笔记共享给大家.希望大家共同进步. HTML ...
- iOS Swift3.0 OC 数据储存--归档
一.Swift 3.0 1.model class userModel: NSObject,NSCoding { var account: String = "" var regm ...
- 前端开发必备之MDN文档
想下载MDN文档的看前面的内容就可以了. HTML 源码下载 MDN官方下载地址:https://developer.mozilla.org/media/developer.mozilla.org.t ...
- bash shell快捷键[转]
生活在 Bash shell 中,熟记以下快捷键,将极大的提高你的命令行操作效率. 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按字符前移(右向) ...
- C++ 头文件系列(stdexcept)
预定义异常类 这个头文件包含的内容非常简单,只包含9个异常类,均从exception类派生,因此我们用三张图来描述: 这里仅解释两点: overflow : 指值的大小超过 整型 变量能表示的范围,即 ...