一)攀登数据
2 :上传数据
3 :数据分析
四)数据可视化
第1部分:数据爬网
jzdxl使用通过bs4取得的51个招聘的招聘信息。
forIinOS.listdir(a ) :iflen ) OS.listdir )!=03360path=OS.path.join(a,I ) path=path.split((((-1 ) OS.remove ) ) d: ) dedup(input ) )
defjob(GW ) :forIinrange ) 20 ) : URL=' https://search.chinahr.com/bj/job/pn ' str (i1 ) ) ) (? key=' GW headers={ ' user-agent ' : ' Mozilla/5.0 (windows nt 10.0; 双赢64; x64 ) appleWebKit/537.36(khtml, like Gecko ) chrome/95.0.4638.69 safari/537.36 EDG/95.0.1020.53 ' } respon ning headers=headers (response=response.content.decode (utf-8 ) ) soup=beautifulsoup ) response, ' lxml ' ) result=soup.select (div [ class=' job list PC _ search _ list click ' ) ) forIinresult3360litest=I.lick '') ullist=I.select ) ) ul[class='L2 ' ) ) ulsalary=ullist[0].select ) ) Li[class]='薪资方面的讨论'
第2部分:上传数据
现在,我们使用WinSCP将爬网的数据放在hadoop的/export/data文件夹下,然后在Linux(CRT )中输入以下语句:
hadoop fs -put /export/data/你爬上来的文件名. txt /input
此时,hadoop中已经上传了爬网的数据文件。
访问50070站点,检查文件上传是否成功。
第三部分:数据分析
这一部分是用eclipse写的。
在准备的Hadoop demo maven文件的jsrc/main/java包中创建cn.it包,然后创建三个文件: DedupMapper、DedupReducer和DedupRunner。
DedupMapper进行处理文件的密钥值(数据预处理)
基于DedupReduce的数据分析
深度运行器是主程序
映射:
文本将key (文件)和value (文件2 )指定为字符串类型
用a和b分别记录月和月的位置
接下来,处理爬网的数据。 未处理的数据格式如下。
field.set(value.tostring ().substring(0) ) 0,a );
field2.set(value.tostring ) ).substring (a1,b-2);
这两个句子表明key(file )被取了。 前) 0,a )左闭右开
value获取:然后在原始之前
处理后的数据如下
冗馀:
这里求出了各职业的工资平均值
Runner :
runner后返回50070站点
点击part-r-00000下载后,将part-r-00000放入一个文件夹中。
四)数据可视化
可以用条形图或字云等进行操作。