资源简介
通过requests抓包方式爬取拉勾网深圳市的数据分析岗位信息,并利用pandas、pyecharts、jieba、WordCloud等工具,从多维度进行岗位数据的可视化分析。
代码片段和文件信息
# coding: utf-8
# In[3]:
#爬虫部分
import requests
# import pandas as pd
import json
import time
#数据可视化部分
import pandas as pd
from collections import Counter
from pyecharts import PieBarGridMapFunnelRadar
#词频词云的模块导入
import jieba
import codecs
from imageio import imread
import os
from os import path
import matplotlib.pyplot as plt
from PIL import Image ImageDraw ImageFont
from wordcloud import WordCloud ImageColorGenerator
#数据分析岗位,拉勾网总共的职位是22页
def data_worm_save():
position_info_all = []
for page_num in range(124):
url = “https://www.lagou.com/jobs/positionAjax.json?px=default&city=%E6%B7%B1%E5%9C%B3&needAddtionalResult=false“
#my_header = {‘User-Agent‘:‘Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X metaSr 1.0‘}
#上述伪装的不够彻底
my_header = {
‘Host‘:‘www.lagou.com‘
‘Origin‘:‘https://www.lagou.com‘
‘Referer‘:‘https://www.lagou.com/jobs/list_%E6%95%B0%E6%8D%AE%E5%88%86%E6%9E%90?px=default&city=%E6%B7%B1%E5%9C%B3‘
‘User-Agent‘:‘Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X metaSr 1.0‘
‘X-Anit-Forge-Code‘:‘0‘
‘X-Anit-Forge-Token‘:‘None‘
‘X-Requested-With‘:‘xmlHttpRequest‘}
#page_num用于修改页码,抓取全部页码的信息
my_data = {‘first‘:‘true‘‘pn‘:page_num‘kd‘:‘数据分析‘}
#注意查看post请求还是get请求
response = requests.post(urlheaders = my_headerdata =my_data )
dict_all = json.loads(response.text)
dict_position_results = dict_all[“content“][“positionResult“][“result“]
for position_item in dict_position_results:
position_info_single = []
position_info_single.append(position_item[“companyFullName“])
position_info_single.append(position_item[“companyShortName“])
position_info_single.append(position_item[“companySize“])
position_info_single.append(position_item[“financeStage“])
position_info_single.append(position_item[“district“])
position_info_single.append(position_item[“positionName“])
position_info_single.append(position_item[“workYear“])
position_info_single.append(position_item[“education“])
position_info_single.append(position_item[“salary“])
position_info_single.append(position_item[“jobNature“])
position_info_single.append(position_item[“positionAdvantage“])
position_info_single.append(position_item[“createTime“])
position_info_all.append(position_info_single)
print(“第 “+str(page_num)+“ 页数据爬取完毕“)
time.sleep(20)
#print(position_info_all)
df = pd.Dataframe(data = position_info_allcolumns = [‘公司全名‘‘公司简称‘‘公司规模‘‘融资阶段‘‘区域‘‘职位名称‘‘工作经验‘‘学历要求‘‘工资‘‘工作形式‘‘职位福利‘‘发布时间‘])
df.to_csv(r‘C:\Users\yong_\Desktop\La_Gou\data_source\lagou_jobs_page_all.
相关资源
- 二级考试python试题12套(包括选择题和
- pywin32_python3.6_64位
- python+ selenium教程
- PycURL(Windows7/Win32)Python2.7安装包 P
- 英文原版-Scientific Computing with Python
- 7.图像风格迁移 基于深度学习 pyt
- 基于Python的学生管理系统
- A Byte of Python(简明Python教程)(第
- Python实例174946
- Python 人脸识别
- Python 人事管理系统
- 基于python-flask的个人博客系统
- 计算机视觉应用开发流程
- python 调用sftp断点续传文件
- python socket游戏
- 基于Python爬虫爬取天气预报信息
- python函数编程和讲解
- Python开发的个人博客
- 基于python的三层神经网络模型搭建
- python实现自动操作windows应用
- python人脸识别(opencv)
- python 绘图(方形、线条、圆形)
- python疫情卡UN管控
- python 连连看小游戏源码
- 基于PyQt5的视频播放器设计
- 一个简单的python爬虫
- csv文件行列转换python实现代码
- Python操作Mysql教程手册
- Python Machine Learning Case Studies
- python获取硬件信息
评论
共有 条评论