学术堂首页 | 文献求助论文范文 | 论文题目 | 参考文献 | 开题报告 | 论文格式 | 摘要提纲 | 论文致谢 | 论文查重 | 论文答辩 | 论文发表 | 期刊杂志 | 论文写作 | 论文PPT
学术堂专业论文学习平台您当前的位置:学术堂 > 计算机论文 > 软件工程论文

购物比价平台的设计与实现

来源:学术堂 作者:杜老师
发布于:2021-10-22 共3273字

  摘  要

  本文主要对当前社会互联网促生的网购现象和发展做了简要的分析,对当前电商平台研究的意义做了分析,对电商平台商品信息的抓取工具做了简单介绍,并展示了使用 python 获取不同购物平台商品信息的研究,介绍了使用基于python 的 web 抓取框架 Scrapy 来抓取并分析不同电商平台的源码技术,从源码中获取商品的信息,并借助于 python 开发的 web 框架 Flask 和 mysql 数据库将获取到的信展示给用户的方法。然后对系统设计和实现做了介绍和分析,最后对系统的测试和结果做出了展示。系统以网站的形式展示不同平台的商品信息,让用户得以更加方便的使用和操作,做出更加正确的选择。

  关键词 :     商品信息  抓取  python  Scrapy  Flask。

  The design and implementation of the shopping price platform abstract

  This paper makes a brief analysis on the current social phenomenon and promoteInternet online shopping development, the significance of the research on the currentbusiness  platform  to  do  the  analysis,  business  platform  for  commodity  informationcapture tools to do a simple introduction, and shows the research using Python to obtaindifferent  shopping  platform  product  information,  introduced  the  use  of  Scrapy  webcapture the framework based on Python to capture and analyze the different businessplatform source technology, access to product information from the source code, andwith the help of the python development framework of web Flask and My SQL databaseshow will get to the letter to the user method. Then the design and implementation ofthe system are introduced and analyzed. Finally, the test and results of the system aredisplayed. The system shows the commodity information of different platforms in theform of Web site, so that users can be more convenient to use and operate, and makemore correct choices.

  Key Words:    Commodity information;Grab;Python;Scrapy;Flask。

  1. 绪论

  1.1、 背景和研究意义。

  随着互联网的不断发展,快递业不断地优胜略汰,和各大电商平台功能日益完善,网购逐渐变得越来越便捷安全,而且正在成为一种时尚。在当今社会,时间无疑是人们最重要的资源,无论是工作,休息陪伴家人,大多数人都不会愿意把这种无价的资源浪费在对着手机或者电脑屏幕选择和比较商品上面。因此,对于不同电商平台,便捷、迅速的选择比较途径被越来越多的人所青睐。

  1.2、 论文研究主要内容。

  本文主要对不同电商平台商品数据的分析和抓取,以网站的形式展示给用户,为网购用户提供清晰的商品信息比较,以便于用户在最短的时间内,准确的选择性价比更高,更加适合自己的商品。

1.png

  在接下来的第二章,第一节,介绍了本论文研究的主要任务即功能需求,第二节主要介绍了开发环境和软件,第三节介绍了本论文涉及的关键技术。

  在第三章,主要介绍了对论文研究内容的系统设计,主要包括功能模块设计,数据库设计,页面设计,这三个内容分我将分为三节进行介绍。

  第四章是系统的实现过程,也是最主要的部分,分别包括环境的搭建,数据库的相关内容,和 scrapy 爬取数据的过程,以及数据的存储和显示,分别在五个小节详细介绍。

  最后一章是对本次论文的总结和展望,以及我在学习过程中我查询过的资料和来源,最后一节是我对大学四年以及这次论文研究的总结,感谢这四年遇到的老师和同学。

  2. 项目准备。

  2.1、 明确功能需求。

  在项目中我们首先要考虑的是我们要做什么,我们要获取不同电商平台的商品数据并且将这些数据保存在数据库中,然后以网站的形式将这些数据展示在网页上。很显然要展示给用户来自不同的电商平台的商品信息,就需要我们去获取,所以我们要学习网络爬虫的技术,而 python 已经有很多定义好的模块可以给我们直接使用,这些经过无数前辈检验过的东西让我们可以不用考虑爬虫底层的细节问题而可以更加专注于我们需要获取的数据并且有更多的时间去做后续的处理工作。在我的系统种,我选择了 python 开发的 scrapy 作为项目开发的 web 抓取和提取数据的框架。在爬取淘宝等网站的数据时,根据经验,我们爬取数据的行为常常会被服务器检测到并且他们会采取一些手段对我们的爬虫动作进行屏蔽。因此我们需要将我们的爬虫伪装成浏览器的浏览操作,这就需要我们掌握浏览器伪装的技术。在我们从网站上爬取数据时,我们是通过分析网页源码规律,获取里面的某一段数据做到的,我使用正则表达式和XPath 表达式来对网页的源代码进行分析和获取。当我们获取到数据,我们需要将获取的数据存储起来保存在文件中,也可以存在数据库中,我在项目中选择 mysql 数据库。页面的显示由很多优秀的框架可以用,我们可以任意挑选一种,在系统中,我选择使用 flask 框架。

  【由于本篇文章为本科论文,如需全文请点击底部下载全文链接】

  2.2、开发环境和软件.

  2.3、关键技术介绍.

  2.3.1、网络爬虫

  2.3.2、python语言

  2.3.3、scrapy介绍

  2.3.4、防爬虫屏蔽之浏览器伪装技术

  2.3.5、XPath表达式

  2.3.6、scrapy-spl ash.

  2.3.7、正则表达式

  2.3.8、flask介绍

  2.3.9、 MVC 设计模式

  2.3.10、基于python的模板引擎jinja

  3. 系统设计

  3.1、功能模块设计.

  3.2、数据库设计.

  3.3、页面设计.

  4. 系统实现

  4.1、搭建开发环境.

  4.1.1、安装python环境

  4.1.2、安装集成开发环境PyCharm. .

  4.1.3、安装scrapy模块

  4.1.4、安装flask

  4.2、创建数据库.

  4.2.1、安装数据库链接驱动

  4.2.2、连接数据库:

  4.2.3、创建商品信息表.

  4.2.4、测试数据库连接.

  4.3、数据获取

  4.3.1、创建-一个scrapy项目.

  4.3.2、定义item文件

  4.3.3、编写爬虫文件

  4.3.4、数据处理文件

  4.4、存储数据.

  4.5、测试.

  5.    结 论

  在本课题的研究中,我们分了三个步骤,首先使用 python 的 scrapy 框架将各个电商平台的商品数据进行抓取,抓取之后,对下载下来的网页进行分析使用 XPath 表达式和正则表达式对我们所需要的商品信息获取,我们最后要展示商品名称、价格、店铺、平台以及购买链接等非结构化信息结构化为 Scrapy内置的 item,然后在 scrapy 的 pipaline.py 中对结构化的 item 进行处理,添加到数据库中,然后使用 python 的 web 框架搭建了一个用于显示商品信息的网站,将数据库中的信息进行了展示。

  参考文献

  [1]舒德华. 基于 Scrapy 爬取电商平台数据及自动问答系统的构建[D]. 华中师范大学,2016.

  [2]王静. 基于 Scrapy 的电子商务网络测量与网络特征分析[D]. 北京交通大学, 2012.

  [3]李乔宇, 尚明华, 王富军, 刘淑云. 基于 Scrapy 的农业网络数据爬取[J]. 山东农业科学, 2018, 50(01): 142-147.

  [4]狄博, 王晓丹. 基于 Python 语言的面向对象程序设计课程教学[J]. 计算机工程与科学, 2014, 36(S1): 122-125.

  [5]朱贇. Python 语言的 Web 开发应用[J]. 电脑知识与技术, 2017, 13(32): 95-96.

  [6]彭小明. 主题爬虫的设计与实现[D]. 北京邮电大学, 2013.

  [7]郭一峰. 分布式在线图书爬虫系统的设计与实现[D]. 北京交通大学, 2016.

  [8]房瑾堂. 基于网络爬虫的在线教育平台设计与实现[D]. 北京交通大学, 2016.

  [9]王明军. 基于 Web 的空间数据爬取与度量研究[D]. 武汉大学, 2013.

  [10]吴桐. 基于 Flask 框架的物资管理系统的设计与实现[D]. 南京大学, 2016.

  [11]叶锋. Python 最新 Web 编程框架 Flask 研究[J]. 电脑编程技巧与维护, 2015(15):27-28.

  [12]雷亮辉, 鄂旭, 杨芳, 周津, 刘春晓. 基于开源框架 Flask 的教务系统的设计与实现[J]. 信息与电脑(理论版), 2016(20): 107-109.

  [13]李文龙. 基于 Docker 集群的分布式爬虫研究与设计[D]. 浙江理工大学, 2017.

  [14]赖英旭, 刘增辉, 李毛毛. MVC 模式在 B/S 系统开发中的应用研究[J]. 微计算机信息, 2006(30): 62-64+113.

  [15]郭太飞, 何洁月.归纳学习 XPATH Web 信息提取规则[J]. 计算机技术与发展,2007(03): 98-101.

  [16]胡军伟, 秦奕青, 张伟. 正则表达式在 Web 信息抽取中的应用[J]. 北京信息科技大学学报(自然科学版), 2011, 26(06): 86-89.

相关标签:
  • 报警平台
  • 网络监察
  • 备案信息
  • 举报中心
  • 传播文明
  • 诚信网站