APP下载

基于Python电子商务网站爬虫技术与设计

2019-10-21姜慧梅

科学与财富 2019年29期
关键词:网络爬虫数据电子商务

姜慧梅

摘 要:网络爬虫技术是一门非常实用、易学、高效、让人产生成就感的技术。在电子商务高速发展的时代如何利用爬虫技术帮助人们全面、有效、精确地得到有价值的数据,定时抢购某种商品,利用网络爬虫自动地浏览电子商务网站中的信息,精准制定自己的要求,快速查询。

关键词:网络爬虫;数据;电子商务

0引言

在信息高速发展的大数据时代,互联网的信息数据蕴含着巨大的商业价值。如何充分挖掘信息数据的潜在价值,帮助人们在电子商务网站上找到理想的商品,更便宜的生活用品,帮助企业找到隐藏着巨大商业价值的数据,在众多的数据中如何挑选出有价值的数据,成为解决关键问题的数据支撑。

本文是利用Python语言编写网络爬虫程序,可以自动浏览电子商务网站中的商品信息,然后根据制定的规则下载和提取商品相关信息和商品图片。

1网络爬虫的相关技术

1.1什么是网络爬虫

网络爬虫也可以称为网页蜘蛛,或是网络机器人,可以按照指定的搜索查询设置规则,程序实现自动地下载目标网页,抓取网站的相关文字信息或者图片信息,从而使得用户能更快的检索到所需要的信息,目前爬虫技术广泛用于互联网搜索引擎或其他类似网站,以便获取目标网站的更新内容和搜索数据的方式[1]。

1.2 HTTP請求

在Python中实现HTTP请求主要有两个库进行调用。第一个库是Urllib库,第二个库是Requests库,这两种实现HTTP请求的库中,使用Requests库最简单,功能比较全面。Requests库是用Python语言编写的,调用Requests库节约编程工作,简单易调用,可以满足HTTP的测试需求。

1.3 爬虫框架

在Python中,有很多的爬虫框架,常见的Python爬虫框架主要有Pyspider框架、Scrapy框架、Cola框架等,本文采用Scrapy。

使用ScrapyStartprojectpachong1生成一个爬虫项目,可以看到项目生成的爬虫文件目录,文件目录介绍如下:

(1)在项目文件的根目录下,其中scrapy.cfg文件是项目配置文件,。

(2)在根目录下存储的item.py是保存爬取数据容器,需要爬取什么数据,在这里进行定义。

(3)在根目录下存储的pipelines.py文件,可以保存爬取的数据到数据库里。

(4)在根目录下存储的middlewares.py文件,主要用来对所发出爬虫的请求、收到的响应和spider做全局性的自定义设置。

(5)在根目录下存储的setting.py文件,是爬虫框架的设置文件。

(6) 在根目录下存储的spiders文件夹,存放编写的爬虫代码文件和下载的网页文件。

1.4动态网页爬取方法

电子商务网店大部分都是动态网页设计,采用AJAX技术,通过后台与服务器进行少量数据交换,实现网页异步更新,这样可以在不重新加载整个网页的情况下,对网页的局部内容进行更新[2]。

(1)加载网页,查看在URL不变的情况下,未刷新该页面,查看是否能够加载新的网页内容信息。

(2)所用的爬取网页源码结构与显示并不相同。

2网络爬虫系统设计

2.1电子商务网站爬虫的功能

在电子商务网站中,可以利用网络爬虫有效抓取商品标题、货号编号及商品图片并将其存入本地数据库中。由于电子商务网站爬虫需要抓取的网站页面对应的URL地址不是固定的,而是在时刻变化的,因此,在爬虫抓取网站URL地址的过程中需要特别注意对URL地址的访问方式及记录去重[3]。

2.2网络爬虫基本流程

利用Python技术进行电子商务网站爬虫的基本工作流程设置如下:

(1)首先,把要进行爬虫网络中,选取一些要进行爬虫的种子URL;

(2)然后把URL存储在待抓取URL队列中;

(3)读取URL队列中,将目标网页下载下来,存在本地文件夹,将这些已经保存过的URL地址放入已经抓取的URL队列。

(4)分析下载模块传过来的网页数据,提取出感兴趣的数据。

(5)在调度模块里,可以把接收到的网页URL数据进行模块解析。

(6)整个网站爬虫系统抓取URL地址队列,直到循环结束。

(7)最后可以进行整理下载的数据信息,并存入数据库。

(8)根据爬取结果从数据库中进行读取,挑选出有价值的商品信息和商品图片。

3 电子商务网站爬虫实现

3.1爬虫代码

使用CrawlSpider根据URL规则爬取是一个非常好的方法,可以使代码非常简洁。

第一步,生成项目,可以使用Crawl模版生成爬虫Spider.,生成爬虫项目文件夹pachong1, 生成了爬虫文件Chanpin.py。

第二步,根据需要的数据,定义Item,打开Item.py文件定义要爬取的数据。

第三步,编写spider文件,打开生成的爬虫文件Chanpin.py。

(2)用列表推导式生成start_urls

(3)定义商品列表页解析方法

3.2使用MongoDB和scrapy_redis搭建分布式爬虫

在使用之前我们要确保已经安装好了MongoDB并启动了该服务,进入python工作模式。此处主要用于Python数据的保存,我们要安装Python的PyMongo库,运行‘pip install pymongo命令完成pymongo的安装。

执行爬虫代码,然后到Robomongo刷新就会看到数据已经保存在数据库里。

4 结束语

本次实验通过Python编程实现对电子商务网站进行商品信息的爬虫,能够对指定网页中的商品信息、商品图片、商品介绍文字等进行抓取。经反复测试数据显示,该程序能够有效的实现电子商务商品信息进行批量下载功能,而且提高个性化数据的获取。

参考文献:

[1] 谢克武. 大数据环境下基于python的网络爬虫技术[J].软件开发, 2017,18

[2] 齐文光. Python网络爬虫实例教程[M].人民邮电出版社.2018.7

[3] 仇明. 基于 Python 的图片爬虫程序设计[J].工业技术与职业教育.2019.3

猜你喜欢

网络爬虫数据电子商务
《电子商务法》如何助力直销
电子商务
炼铁厂铁量网页数据获取系统的设计与实现
公路工程试验检测存在的问题及措施
一种借助数据处理构建的智能食堂管理系统
基于社会网络分析的权威网页挖掘研究
主题搜索引擎中网络爬虫的实现研究
浅析如何应对网络爬虫流量
关于加快制定电子商务法的议案
跨境电子商务中的跨文化思考