失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python3.5安装scrapy_Python3.5下安装测试Scrapy

python3.5安装scrapy_Python3.5下安装测试Scrapy

时间:2019-01-05 04:43:53

相关推荐

python3.5安装scrapy_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:

# /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 : /1/18

# @Desc :

import scrapy

from allister.items import AllisterItem

class ItcastSpider(scrapy.Spider):

name = "ic2c"

allowed_domains = [""]

start_urls = [

"/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文件中;

如果出现如下错误请看对应解决办法:

如果觉得《python3.5安装scrapy_Python3.5下安装测试Scrapy》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。