admin 管理员组

文章数量: 887021


2024年2月27日发(作者:图标包制作器:iconstructor)

数据库技术Database

Technology电子技术与软件工程Electronic

Tech

nology

&

Software

Engineering基于Scrapy的电商数据分析系统设计与实现文/李依潼王骥任肖丽(广东海洋大学电子与信息工程学院

广东省湛江市524088

)摘

要:本文深入挖掘京东购物网站的产品信息及评论数据,设计一款基于Scrapy爬虫框架的简易后台。通过分析分布式抓取的海

量数据获得全面且客观的消费特征,然后从品牌、商品、用户三方属性对数据整合和处理,最后将数据可视化结果返回前端,呈现出京东

购物数据分析系统,进而获取商品信息及可靠评论数据,迅速帮助商家掌握消费者购物需求及特点,根据需要改变营销策略。关键词:Python3.

7;

Scrapy;爬虫;数据分析;数据可视化1引言表1:工程目录下文件和文件夹作用文件/文件夹spiders作用及其说明电子商务的兴起促进了商业模式变革,物联网、云计算的出现

推动信息爆发式增长,这是电商时代,亦是大数据时代,如何利用

海量信息产生更多效益,成为商业竞争的核心(,1[2,o获取有效数据

爬虫文件放置目录定义数据实体是大数据研究的重点,网络爬虫技术是获取互联网海量数据的关键

手段之一。中间件,爬取过程中进行特定操作定义管道,对爬取到数据进行处理,比网络爬虫是对不同网页进行下载和分析,经过存储、相关度计

算、排序,再将关键词展现到用户面前⑴。本文以爬取京东购物网

保存数据到数据库爬虫设置站网页数据为例,设计…个基于Scrapy框架的数据分析系统。在

Python

3.7编程语言的Scrapy框架下搭建Web爬虫,爬取京东网

站搜索结果前两页商品信息、总体评价和每件商品前20页评论,

然后采用MongoDB实现持久化数据存储,再利用Python生态的

当前爬虫使用的scrapy设置Numpy、Pandas数据处理工具包对数据进行清洗、转换、分组、计

算,最终基于Matplotlib实现分析结果可视化。通过反馈回的商品

信息与解析结果,为商家制定个性化的营销策略提供依据。2关键技术2.

1

Web爬虫爬虫也称网络信息爬取技术,通过网页链接地址URL向服务

器发送请求获取网页信息内容。Web爬虫是…个自动访问的互联网程序,用来检索Web页面、提取必

要信息、存入本地数据库⑶。网络爬虫基本工作流程如下⑷:(1) 选取精心挑选的种子URL;(2)

将种子URL放入待抓取URL队列;图1:系统整体架构(1)

Spiders将待爬取网页URL经Scrapy

Engine交给

Scheduler;(2)

Scheduler

理后经

Scrapy

Engine

Downloader

(3)

从待抓取URL队列取出待抓取URL,

DNS解析后得到

目标主机Ip;(4)

下载URL对应的网页并存储进已下载的网页库中。同时,

Middleware

交给 Downloader;将这些URL放进已抓取URL队列;(5)

分析已抓取URL队列中的URL,获取必要的数据存入

(3)

Downloader

Internet

发送请求,接收

Response,将

Response

经 Scrapy

Engine

Scrapy

Middelwares

交给

Spiders;(4)

Spiders

处理提取

Response 后经

Scrapy

Engine 交给

数据库;(6)

分析其他URL,将URL放入待抓取URL队列,进入下

一个循环。Pipeline

保存;(5)

提取URL重复上述步骤,直到无URL请求或达到停止

条件。2.

3数据处理及可视化2.

2

ScrapyScrapy框架是使用Python开发的一种快速、开源的爬虫程

序,可在运行在Windows.

Linux等多种主流操作平台,采用基

于Twisted的下载器,提供了丰富的中间接口及较强的目录约束,

编写代码清晰、可扩展性好、可移植性强、可维护性高,用户只

需在Scrapy框架基础上定制开发模块即可实现高效的爬虫应用⑸

⑹。Scrapy框架由调度器(Scheduler)>下载器(Downloader)、爬虫

数据清洗和处理采用Numpy和Pandas两个库,NumPy是

Python科学计算的基础包,作为算法和库之间传递数据的容器,它

提供了快速数组处理能力;Pandas能够进行复杂精细索引,它提供

了大量处理结构化数据的函数,更加便捷地完成重塑、切块、聚合、

选取数据子集等操作[91l,0]o(Spider)、实体管道(Item

Pipeline)>

Scrapy

引擎(Scrapy

Engine)

五大组件构成。爬虫执行流程如下171

[81:数据可视化使用Matplotlib图形库,它是用Python语言编写的

二维图形库,充分利用了

Python简洁优美和面向对象的特点,便

于绘出直方图、功率谱、条形图、散点图等,Matplotlib提供的相

178


本文标签: 数据 爬虫 信息