加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 移动互联 > 正文

15分钟,教你用Python爬网站数据,并用BI可视化说明!

发布时间:2019-01-18 02:34:42 所属栏目:移动互联 来源:数据分析不是个事儿
导读:作为一名在数据行业打拼了两年多的数据说明师,固然今朝收入还算ok,但平日想起房价,男儿三十还未立,心田就难免倘佯不已~ 两年时刻里曾经换过一份事变,一向都是从事大数据相干的行业。今朝是一家企业的BI工程师,首要事变就是给营业部分出报表和营业分
副问题[/!--empirenews.page--]

作为一名在数据行业打拼了两年多的数据说明师,固然今朝收入还算ok,但平日想起房价,男儿三十还未立,心田就难免倘佯不已~

两年时刻里曾经换过一份事变,一向都是从事大数据相干的行业。今朝是一家企业的BI工程师,首要事变就是给营业部分出报表和营业说明陈诉。

追念本身已往的事变后果业舯坫是不错的,多次通过本身说明告,办理了营业的疑难杂症,率领们各类离不开。

但空隙久了总会有点莫名的张皇,以是我地址的这个岗亭将来会有多大成长空间,十年之后我能成为什么样的人呢?本身的收入空间尚有几多?

一番难受之后,别再问路在何方了,于是抄起本身的“家伙”,花了一小会时刻爬了智联雇用上BI岗亭的数据信息,做了个说明。

PS:所用器材为Python+BI

数据说明的进程犹如烧一顿饭,先要数据收罗(买菜),然后数据建模(配菜)、数据洗濯(洗菜)、数据说明(做菜)、数据可视化(摆盘上菜)。

以是第一步,要收罗/选择数据。

一、Python爬取智联雇用岗亭信息(附源码)

选择智联雇用,通过Python来举办“BI工程师”的要害数据信息的爬取,这里各人也可以试着爬取本身岗亭的要害词,如“数据说明师”、“java开拓工程师 ”等。颠末F12说明调试,数据是以JSON的情势存储的,可以通过智联雇用提供的接口挪用返回。

15分钟,教你用Python爬网站数据,并用BI可视化说明!

那么我这边通过Python对智联雇用网站的数据举办理会,爬取了30页数据,而且将岗亭名称、公司名称、薪水、地址都市、所属行业、学历要求、事变年限这些要害信息用CSV文件生涯下来。

附上完备Python源码:

  1. import requests 
  2. import json 
  3. import csv 
  4. from urllib.parse import urlencode 
  5. import time 
  6.   
  7. def saveHtml(file_name,file_content): #生涯conten工具为html文件 
  8.  with open(file_name.replace('/','_')+'.html','wb') as f: 
  9.  f.write(file_content) 
  10.   
  11. def GetData(url,writer):#理会并将数据生涯为CSV文件 
  12.  response= requests.get(url) 
  13.  data=response.content 
  14.  saveHtml('zlzp',data) #生涯html文件 
  15.  jsondata=json.loads(data) 
  16.  dataList=jsondata['data']['results'] 
  17.  #print(jsondata) 
  18.  for dic in dataList: 
  19.  jobName=dic['jobName'] #岗亭名称 
  20.  company=dic['company']['name'] #公司名称 
  21.  salary=dic['salary'] #薪水 
  22.  city=dic['city']['display'] #都市 
  23.  jobtype = dic['jobType']['display'] #所属行业 
  24.  eduLevel=dic['eduLevel']['name'] #学历要求 
  25.  workingExp=dic['workingExp']['name'] #事变履历 
  26.  print(jobName,company,salary,city,jobtype,eduLevel,workingExp) 
  27.  writer.writerow([jobName,company,salary,city,jobtype,eduLevel,workingExp]) 
  28. param={ 'start':0, 
  29.  'pageSize':60, 
  30.  'cityId':489, 
  31.  'workExperience':-1, 
  32.  'education':-1, 
  33.  'companyType': -1, 
  34.  'employmentType': -1, 
  35.  'jobWelfareTag': -1, 
  36.  'kw': 'BI工程师', #搜刮要害词,可以按照你必要爬取的岗亭信息举办改换 
  37.  'kt': 3, 
  38.  'lastUrlQuery': {"p":1,"pageSize":"60","jl":"681","kw":"python","kt":"3"} 
  39.  }#参数设置 
  40. pages=range(1,31)#爬取1-30页数据 
  41. out_f = open('test.csv', 'w', newline='') 
  42. writer = csv.writer(out_f) 
  43. writer.writerow(['jobName','company','salary','city','jobtype','eduLevel','workingExp']) 
  44. for p in pages: #自动翻页 
  45.  param['start']=(p-1)*60 
  46.  param['lastUrlQuery']['p']=p 
  47.  url = 'https://fe-api.zhaopin.com/c/i/sou?' + urlencode(param) 
  48.  GetData(url,writer) 
  49.  time.sleep(3)#隔断休眠3秒,防备IP被封 
  50.  print(p) 
  51. out_f.close()  

颠末一番编译调试,代码乐成运行。

15分钟,教你用Python爬网站数据,并用BI可视化说明!

所稀有据爬取完毕,一共1800条,生涯在当地CSV文件中。

数据是爬到了,详细我想相识哪些信息呢:各都市的BI岗亭需求环境以及薪资程度;薪水随事变履历的涨幅环境,以及有哪些详细的高薪岗。

由此可见,想要说明的角度许多,且看了源数据,还要做不少的数据处理赏罚。最简朴快速出可视化的要领天然是用BI器材,来对数据做简朴洗濯加工,并泛起可视化。

BI能应付绝大大都场景的数据说明,尤其善于多维数据切片,不必要建模;乃至数据洗濯环节也能放在前端,通过过滤筛选、新建计较公式等来办理。最后泛起可视化,并可计划数据陈诉。

这里我用FineBI来做这样一份说明。

FineBI做说明概略是这样的流程:毗连/导入数据——数据处理赏罚/洗濯(过滤、筛选、新增公式列)——试探式说明——数据可视化——出陈诉。

二、数据洗濯加工

1.薪水上下限支解:

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读