scrapy使用快速入门

2019-01-08| |来自: 互联网

首先你要具备以下能力:

#有一定的python基础和编程思想,

#具有一定的liunx系统管理基础

#掌握基本数据库操作,增删改查等,

#了解html,css,js相关方面的知识

建议使用Pycharm开发工具,方便调试

下面我们开始写爬虫程序

1、创建一个scrapy项目

在D:\myprogram\python\demo目录下,打开命令行,输入以下命令,创建一个scrapy项目

scrapy startproject minespider

scrapy startproject是创建scrapy项目的固定格式,后面的minespider是你要创建的项目名称,可根据你的需求来取名,最好做到见名知意。

下面是项目创建成功后的截图

下面我们来看一下用命令行创建的项目目录结构

2、创建scrapy蜘蛛文件

在我们第一步创建的scrapy项目中,将要创建的蜘蛛文件放在spiders文件夹下,不要问问什么,固定格式

可以使用pycharm创建scrapy蜘蛛爬虫python文件,现在我们创建一个名为mine_spider.py的蜘蛛文件,创建方法如下所示:

文件创建成功后,我们就可以在这个蜘蛛文件中爬虫我们想要的网站内容了,目录结构如下所示:

注:编写蜘蛛文件需要遵守scrapy的规则

A:首先我们需要创建一个类,并继承scrapy的一个子类:scrapy.Spider 或者是其他蜘蛛类型;B:然后定义一个蜘蛛名,name=“” 后面我们运行的话需要用到;C:定义我们需要爬取的网址;D:继承scrapy的一个方法:start_requests(self),这个方法的作用就是通过上面定义的链接去爬取页面,简单理解就是下载页面。

下面是一个简单的例子,告诉大家scrapy爬虫的流程

(1)、定义链接;

(2)、通过链接爬取(下载)页面;

(3)、定义规则,然后提取数据;

import scrapy

class minespider(scrapy.Spider): #需要继承scrapy.Spider类

name = "myspider" # 定义蜘蛛名

def start_requests(self): # 由此方法通过下面链接爬取页面

# 定义爬取的链接

urls = [

http://lab.scrapyd.cn/page/1/,

http://lab.scrapyd.cn/page/2/,

]

for url in urls:

yield scrapy.Request(url=url, callback=self.parse) #爬取到的页面如何处理?提交给parse方法处理

def parse(self, response):

#在该方法中,可以提取start_requests已经爬取到的页面内容,可以用xpath、正则、或是css进行相应内容提取。

page = response.url.split("/")[-2] #根据上面的链接提取分页,如:/page/1/,提取到的就是:1

filename = myspider-%s.html % page #拼接文件名,如果是第一页,最终文件名便是:myspider-1.html

with open(filename, wb) as f:f.write(response.body) #将下载下来的页面存放到python文件中

3、运行myspider这个蜘蛛文件,命令如下:

scrapy crawl myspider

以上就是scrapy爬虫的具体操作流程,这个例子在有的机子上会报错,不过,这只是个告诉大家scrapy是如何进行网页爬取的demo,大家理解它的工作原理即可。


标签:scrapy 蜘蛛 文件 爬虫 页面 链接 方法 项目 myspider
出处: https://mbd.baidu.com/newspage/data/landingsuper?context={

文明发言,请先登录

文明上网理性发言,请遵守国家法律法规。

最新评论

©2003- 黑基网 黑名单存档手机版网站地图免责条款法律声明隐私保护