Rumah >pembangunan bahagian belakang >Tutorial Python >Python爬虫之Anaconda环境下创建Scrapy爬虫框架

Python爬虫之Anaconda环境下创建Scrapy爬虫框架

不言
不言asal
2018-09-07 15:38:426742semak imbas

在Anaconda环境下如何创建Scrapy 爬虫框架?本篇文章将给大家介绍关于Anaconda环境下创建Scrapy爬虫框架项目的步骤,值得一看。

Python爬虫教程-31-创建 Scrapy 爬虫框架项目

首先说一下,本篇是在 Anaconda 环境下,所以如果没有安装 Anaconda 请先到官网下载安装

Anaconda 下载地址:https://www.anaconda.com/download/

Scrapy 爬虫框架项目的创建

0.打开【cmd】

1.进入你要使用的 Anaconda 环境

这里我们就把项目创建好了,分析一下自动生成的文件的作用

1.环境名可以在【Pycharm】的【Settings】下【Project:】下找到

20180904195044661.jpg

2.使用命令:activate 环境名,例如:

activate learn

3.进入想要存放 scrapy 项目的目录下 【注意】

4.新建项目:scrapy startproject xxx项目名,例如:

scrapy startproject new_project

5.操作截图:

20180904202756803.jpg

6.在文件资源管理器打开该目录,就会发现生成了好几个文件

20180904201004174.jpg

7.使用 Pycharm 打开项目所在目录就可以了

Scrapy 爬虫框架项目的开发

0.使用 Pycharm 打开项目,截图:
20180904202125839.jpg

项目的开发的大致流程:

地址 spider/xxspider.py 负责分解,提取下载的数据

1.明确需要爬取的目标/产品:编写 item.py

2.在 spider 目录下载创建 python 文件制作爬虫:

3.存储内容:pipelines.py

Pipeline.py 文件

当 spider 对象被关闭的时候调用

spider 对象对开启的时候调用

进行一些必要的参数初始化

spider 提取出来的 item 作为参数传入,同时传入的还有 spider

此方法必须实现

必须返回一个 Item 对象,被丢弃的 item 不会被之后的 pipeline

对应 pipelines 文件

爬虫提取出数据存入 item 后,item 中保存的数据需要进一步处理,比如清洗,去虫,存储等

Pipeline 需要处理 process_item 函数

process_item

_ init _:构造函数

open_spider(spider):

close_spider(spider):

Spider 目录

对应的是文件夹 spider 下的文件

_ init _:初始化爬虫名称,start _urls 列表

start_requests:生成 Requests 对象交给 Scrapy 下载并返回 response

parse:根据返回的 response 解析出相应的 item,item 自动进入 pipeline:如果需要,解析 url,url自动交给 requests 模块,一直循环下去

start_requests:此方法尽能被调用一次,读取 start _urls 内容并启动循环过程

name:设置爬虫名称

start_urls:设置开始第一批爬取的 url

allow_domains:spider 允许去爬的域名列表

start_request(self):只被调用一次

parse:检测编码

log:日志记录

相关推荐:

python爬虫框架scrapy实例详解

Scrapy爬虫入门教程四 Spider(爬虫)

使用Python的Scrapy框架编写web爬虫的简单示例

Atas ialah kandungan terperinci Python爬虫之Anaconda环境下创建Scrapy爬虫框架. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn