推荐星级:
  • 1
  • 2
  • 3
  • 4
  • 5

Python框架下基于主题的数据爬取技术研究与实现*

更新时间:2019-12-25 12:59:46 大小:2M 上传用户:songhuahua查看TA发布的资源 标签:python 下载积分:1分 评价赚积分 (如何评价?) 打赏 收藏 评论(0) 举报

资料介绍

如今上网查询和购物已经成为人们的生活必需。由于在很多系统上查看商品或资源需要点击跳转多个页面,随着浏览时间的增加,经常会出现眼花缭乱的感觉。若只为用户呈现必要的数据,必将提高筛选资源的效率。文章使用Python语言结合目前流行的Spring MVC框架来爬取目标网站的数据,设计了数据爬取模块和数据展示模块,实现了基于主题的爬虫框架。通过爬取实验与结果测试,成功爬取到了目标网站的数据并展示到自己的页面上,实现了预期的目标。


部分文件列表

文件名 大小
Python框架下基于主题的数据爬取技术研究与实现*.pdf 2M

部分页面预览

(完整内容请下载后查看)
Computer Era No. 11 2018  
· 10 ·  
DOI:10.16644/j.cnki.cn33-1094/tp.2018.11.003  
Python架下基于主题的数据爬取技术研究与实现*  
严 斐,肖 璞  
(三江学院计算机科学与工程学院,江苏 南京 210012)  
要:如今上网查询和购物已经成为人们的生活必需。由于在很多系统上查看商品或资源需要点击跳转多个页面,  
随着浏览时间的增加常会出现眼花缭乱的感觉。若只为用户呈现必要的数据将提高筛选资源的效率。文章使用  
Python 语言结合目前流行的 Spring MVC 框架来爬取目标网站的数据计了数据爬取模块和数据展示模块现了  
基于主题的爬虫框架。通过爬取实验与结果测试功爬取到了目标网站的数据并展示到自己的页面上现了预期的  
目标。  
关键词:数据爬取;基于主题虫;SpringMVC  
中图分类号TP311  
文献标志码A  
文章编号1006-8228(2018)11-10-04  
Research and implementation of theme-based data crawling technology  
with Python framework  
Yan Fei, Xiao Pu  
Sanjiang University, Nanjing, Jiangsu 210012, China)  
AbstractNowadays, online enquiries and shopping have become the indispensable of people's daily life. Because viewing goods  
or resources on many systems requires clicking and jumping over multiple pages, it is often a dazzling feeling as browsing time  
increases. If only provide users with the necessary data, the efficiency of screening resources will certainly be improved.  
Combining with the popular Spring MVC framework, this paper uses Python language to crawl the data of the target website,  
designs the data crawling module and data display module, and implements the theme-based crawler framework. The crawling  
experiment and the test result show that, the data of the target website is crawled and displayed on its own page, and the  
expected goal is achieved.  
Key wordsdata crawlingtheme-basedcrawlerSpring MVC  
本文研究的内容是如何从目标网页上爬取自己想  
0 引言  
要的信息。目Python为一门易学习入手的编程  
语言受到越来越多程序员的青睐。本文选Python作  
为爬取技术的编程语言用其中较成熟的库如  
BeautifulSoupRequestsScrapyMysql  
数据库。数据展示方面配合 SpringMyBatisSpring  
MVC三大框架将爬取到的数据展示到所需的页面上。  
互联网的快速发展使得互联网的数据变得又多  
又杂们无法在一张页面上获取到尽可能多的数  
据。因此取不同网页上的更多的数据已经成为了  
一种趋势。本文的研究目的就是尽可能多的从目标  
网站上爬取自己想要的信息来提高获取有用信息的  
效率。  
随着技术的不断发展个网站的反爬虫机制也  
日渐成熟面上所存在的一些爬虫程序已经不能正  
确的爬取到用户想要的信息。因此个能正确爬取  
数据的爬虫项目也是市场上所需要的[1]。  
1 爬虫框架介绍  
1.1 Scrapy介绍  
Scrapy 是一个 Python 著名的爬虫框架图 1 所  
收稿日期2018-07-16  
*基金项目江苏省高等学校自然科学研究面上项17KJD520007)  
作者简介1996-苏人程师要研究方向件工程。  
计算机时代 2018 年 第 11期  
· 11 ·  
示。该框架使用Downloader取数据需要指定  
被抓取url抓取的内容放Item Pipeline客户  
进行自定义的处理。Scrapy架封装了下载和调度等  
过程便了爬虫的编写。  
⑸ 引 Scrapy Engine 知 管 道Item  
Pipeline理获取到Item据。同时还要通知调度  
SchedulerURL。  
最后循环工作到获取完所有需要的数据结束  
工作。  
1.3 BeautifulSoupRequests库  
BeautifulSoupRequestsPython虫最  
常用的两个库现已被开发者广泛使用。BeautifulSoup  
库是一中灵活方便的解析库处理高效并且支持许  
多的解析器。我们只需导入该库接调用其中的函  
数就可以找到所需要的信息。对于一些前端页面代  
码较为复杂的网站BeautifulSoup 库可以很大程度地  
减少程序员编写代码的时间。  
Requests一个很实用HTTP户端库写爬  
虫类的项目基本都会使用到它。它具有一些很好的  
特性目标 URL 后添加参数时不需要手动构  
造新的 URL便且避免了许多低级错误。第二,  
Requests 库中的 session 函数可以自动保存 cookies设  
置请求参数次请求时可以自动带上请求的参数。  
第三Requests支持流式上传持上传较大的文件  
或者数据而无需先把它们放进内存中。  
图1 Scrapy构图  
⑴ Scrapy Engine:负 责 Spider,ItemPipline,  
DownloaderScheduler的通讯据传递等。  
⑵ Scheduler责接收引擎发送过来的 Request  
请求照一定的顺序整理队再还给引擎。  
⑶ Downloader Scrapy Engine 发送的所有  
的 request 求并将获取到的 Responses Scrapy  
EngineSpider处理。  
2 目标网站爬虫设计  
2.1 目标网站的确定与进入  
⑷ Spiders责处理所有的 Response 请求并分  
析数据取 Item 需要的数据后继的 URL 交给引  
擎并再次进Scheduler。  
目前现有的爬虫能带给我们很多的开发经验与  
注意事项[2-6]。本次研究选取的目标网站是对爬虫比  
较友好的豆瓣网题是爬取豆瓣网上读书标签下的  
图书并且按照该图书的评分依次存储下来。  
⑸ ItemPipeline责处理 Spider 获取到的 Item,  
进行后期处理。  
首先们使用火狐浏览器打开豆瓣网选一个  
关于主题的图书页面点击进入。尝试更换主题们  
发现豆瓣网URL有规律的。如23示。  
1.2 Scrapy架的运作流程  
⑴ 需要明确一个目标网站一个将要被处理  
URLSpider送给引Scrapy Engine。  
⑵ 引 Scrapy Engine 会 通 知 调 度 器  
Scheduler将 一 些 request 请 求 入 队 。 调 度 器  
Scheduler理好之后再还给引Scrapy Engine。  
图2 标网URL图  
图3 标网URL图  
引 擎Scrapy Engine将 通 知 下 载 器  
Downloader载 request 请求中需要的信息。如果  
下载失败Scrapy Engine会通知调度器记  
全部完成后再次下载。  
基本确URL改变规律为tag面为所需要的  
主题题后面紧跟着类型资源果是 book 就显示  
图书source是显示的各种资源。  
⑷ 下载完的内容将返回给 Spider 由用户自定义  
处理。此时Spider获取以下信息是需要跟进的  
URL是获取到Item据。  
其次以发现豆瓣网站图书页面是分页的并且  
每个页面只展15资源。点击第二页现页面的  
URL生了如下变化体变化如45示。  

全部评论(0)

暂无评论

上传资源 上传优质资源有赏金

  • 打赏
  • 30日榜单

推荐下载