好文档 - 专业文书写作范文服务资料分享网站

大数据采集技术基础应用实践_实验指导书

天下 分享 时间: 加入收藏 我要投稿 点赞

大数据采集技术基础应用实践

实验指导书

一、实验目标 在学生学完《Python网络爬虫》、《大数据采集技术》、《大数据分析与处理》、《Hive数据仓库》等课程基础上,通过本实训课程实现通过Python编程网页数据的采集和通过Flume工具实现日志数据的采集;同时训练学生完成日志数据的清洗、分析及可视化任务。 本实验运用到《Python网络爬虫》、《大数据采集技术》、《大数据分析与处理》、《Hive数据仓库》课程及以前所学的所有知识,具体要达到如下实验目标: 1)掌握通过Python爬取网页数据; 2)掌握大数据集群环境的搭建; 3)掌握通过Flume工具完成日志数据采集; 4)掌握通过MapReduce实现数据的清洗; 5)掌握通过Hive实现对数据的分析与处理; 6)掌握通过Spark完成简单的推荐算法; 7)掌握基础的Web可视化方法。 二、实验说明 2.1 实验难度与时长 实验难度 2.2 前置知识

本实验主要使用的知识与专业技能包括: 序号 知识点 能力要求 ☆☆☆☆ 建议时长 20课时 1

1 2 3 4 5 6 7 8 Python程序设计基础 Java程序设计基础 数据结构 能够使用Python和Java完成基础的程序设Java Web开发技术 计,并结合大数据框架及平台知识对实际Linux基础 问题进行分析和处理。 大数据分析与处理基础 大数据采集与预处理 Hive数据仓库 2.3 实验环境 本实验的实验环境如下: 序号 1 2 3 分类 系统环境 软件环境 依赖类库 具体描述 CentOS 7.0 或 Windows 10 Python3.7环境 + PyCharm工具 +eclipse(JDK1.8)+Hadoop等 略 2.4 术语解释 本实验涉及到的专业术语包含: (1)序列 序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。Python有6个序列的内置类型,但最常见的是列表和元组。序列都可以进行的操作包括索引,切片,加,乘,检查成员。Python已经内置确定序列的长度以及确定最大和最小的元素的方法。 (2)列表 列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。列表的数据项不需要具有相同的类型。

2

2.5 代码框架说明

本实验提供的代码框架如下:

<截图,描述文件及相关层级,注意代码框架一定要满足基本的命名规范和注释规范>

其中,

1)xxx文件的作用是xxx,内部会包含哪些方法(每个方法的作用)。 2)xxx方法的作用是xxx,参数是xxx,返回值是xxx。 2.6 数据集说明 2.6.1 数据说明 日志数据来源于某电商平台,具体内容如下: sale_user.zip 2.6.2 数据特征 sale_user.zip部分数据如下(具体样本数据,考试时发放),共5个字段: user_id 10001082 10001082 10001082 10001082 item_id 285259775 4368907 4368907 53616768 1 1 1 1 behavior_type item_category 4076 5503 5503 9762 time 2014-12-08 18 2014-12-12 12 2014-12-12 12 2014-12-02 15 数据集结构为: user_id:用户id item_id:商品id behavior_type:用户行为类型,包括浏览、收藏、加购物车、购买,对应值分别为1,2,3,4。 item_category:商品分类。 time:用户操作时间(格式为:年-月-日 小时)。

数据特征说明,包含特征的名称、解释、数据类型、特征说明等:

3

2.6.3 数据样例

并拿出一条实际数据,对它的数据特征进行说明。 如:10001082,285259775,1,4076,2018-12-08 18 10001082代表用户id 285259775代表商品id 1代表用户行为的浏览操作 4076代表商品分类

2018-12-08 18代表用户操作的时间

二、 实验内容

3.1 步骤1:通过Python编程实现数据采集 利用伪装浏览器技术实现爬取永川新楼盘(http://fc.cqyc.net/plot)信息,并利用xpath解析技术对楼盘信息进行解析。

要求实现: 11)楼盘名称 2)楼盘地址 3)楼盘价格 4)销售电话 5)楼盘图片

6)把文本信息存入文件,楼盘图片存入磁盘。 实施步骤:

1)在PyCharm开发工具中创建Python程序文件,导入requests、etree模块:

import requests from lxml import etree 2)定义headers信息,如下:

headers = {\-Agent\\(Windows NT 6.1; Win64; x64)

4

AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36\

3)请求楼盘页面地址,如下: res = requests.get(addr, headers=headers) 4)对请求返回结果进行解析,如下: #获取楼盘名称

name=selector.xpath(\-head-l']/h1/text()\ #获取楼盘地址

address=selector.xpath(\-info']/dl[3]/dd[1]/text()\ 5)详细代码如下: import requests from lxml import etree

def spider():

for p in range(1,2): if(p==1):

addr=\ else:

addr=\ #定义http头

headers = {\-Agent\AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.75 Safari/537.36\

res = requests.get(addr, headers=headers) html = res.text

sele_list=etree.HTML(html)

#获取每个楼盘的二级页面url地址

urls=sele_list.xpath(\ #获取每个楼盘详细页面的html内容 for u in urls: res_detail

requests.get(\

5

=

大数据采集技术基础应用实践_实验指导书

大数据采集技术基础应用实践实验指导书一、实验目标在学生学完《Python网络爬虫》、《大数据采集技术》、《大数据分析与处理》、《Hive数据仓库》等课程基础上,通过本实训课程实现通过Python编程网页数据的采集和通过Flume工具实现日志数据的采集;同时训练学生完成日志数据的清洗、分析及可视化任务。本实验运用到《Python网络爬虫》、《
推荐度:
点击下载文档文档为doc格式
1sd6w9ca8e072ie1yi364bptb11wxs00mdx
领取福利

微信扫码领取福利

微信扫码分享