资源简介
智联招聘爬取工作岗位薪资分布以及岗位要求(python),直接运行可用,需要自己下载依赖的包,比如scrapy,pandas,matplotlib等...可用根据百度和错误提示一步一步安装依赖包
代码片段和文件信息
#-*- coding: utf-8 -*-
import re
import csv
import jieba
import numpy
import requests
from tqdm import tqdm
import pandas as pd
from scipy.misc import imread
from wordcloud import WordCloud ImageColorGenerator
from collections import Counter
from bs4 import BeautifulSoup
import matplotlib.pyplot as plt
from requests.exceptions import RequestException
def get_one_page(city keyword region page):
‘‘‘
获取网页html内容并返回
‘‘‘
paras = {
‘jl‘: city # 搜索城市
‘kw‘: keyword # 搜索关键词
‘isadv‘: 0 # 是否打开更详细搜索选项
‘isfilter‘: 1 # 是否对结果过滤
‘sg‘: ‘d5259c62115f44e3bbb380dc88411919‘
‘p‘: page # 页数
‘re‘: region # region的缩写,地区,2005代表海淀
}
headers = {
‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/63.0.3239.132 Safari/537.36‘
‘Host‘: ‘sou.zhaopin.com‘
‘Referer‘: ‘https://www.zhaopin.com/‘
‘Accept‘: ‘text/htmlapplication/xhtml+xmlapplication/xml;q=0.9image/webpimage/apng*/*;q=0.8‘
‘Accept-Encoding‘: ‘gzip deflate br‘
‘Accept-Language‘: ‘zh-CNzh;q=0.9‘
}
url = ‘https://sou.zhaopin.com/jobs/searchresult.ashx?‘
try:
# 获取网页内容,返回html数据
response = requests.get(url params=paras headers=headers)
print(response.url)
# 通过状态码判断是否获取成功
if response.status_code == 200:
return response.text
return None
except RequestException as e:
return None
def parse_one_page(html):
‘‘‘
解析HTML代码,提取有用信息并返回
‘‘‘
# 正则表达式进行解析
pattern = re.compile(‘(.*?).*?‘ # 匹配职位详情地址和职位名称
‘ .*? target=“_blank“>(.*?).*?‘ # 匹配公司名称
‘ (.*?) ‘ re.S) # 匹配月薪
# 匹配所有符合条件的内容
items = re.findall(pattern html)
for item in items:
job_name = item[1]
job_name = job_name.replace(‘‘ ‘‘)
job_name = job_name.replace(‘‘ ‘‘)
salary_avarage = 0
temp = item[3]
if temp != ‘面议‘:
idx = temp.find(‘-‘)
# 求平均工资
salary_avarage = (int(temp[0:idx]) + int(temp[idx+1:]))//2
# html = get_detail_page(job_url)
# print(html)
yield {
‘job‘: job_name
‘job_url‘: item[0]
‘company‘: item[2]
‘salary‘: salary_avarage
}
def get_detail_page(url):
‘‘‘
获取职位详情页html内容并返回
‘‘‘
headers = {
‘User-Agent‘: ‘Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/63.0.3239.132 Safari/537.36‘
‘Host‘: ‘jobs.zhaopin.com‘
‘Accept‘: ‘text/htmlapplication/xhtml+xmlapplication/xml;q=0.9image/webpimage/apng*/*;q= 属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 134783 2018-07-10 15:19 智联招聘爬取工作岗位薪资分布以及岗位要求(python)\2.png
文件 93404 2018-07-10 17:10 智联招聘爬取工作岗位薪资分布以及岗位要求(python)\output.png
文件 8295 2018-07-10 15:40 智联招聘爬取工作岗位薪资分布以及岗位要求(python)\stopwords.txt
文件 10665 2018-07-10 17:38 智联招聘爬取工作岗位薪资分布以及岗位要求(python)\zhilian.py
文件 72208 2018-07-10 17:08 智联招聘爬取工作岗位薪资分布以及岗位要求(python)\zl_上海_java工程师.csv
文件 289072 2018-07-10 17:08 智联招聘爬取工作岗位薪资分布以及岗位要求(python)\zl_上海_java工程师.txt
目录 0 2018-07-10 19:47 智联招聘爬取工作岗位薪资分布以及岗位要求(python)
----------- --------- ---------- ----- ----
608427 7
- 上一篇:python 接口自动化测试脚本demo
- 下一篇:WSN节点部署完整代码
相关资源
- Python-BDD100K大规模多样化驾驶视频数据
- Instant Pygame for Python Game Development How
- Biopython Tutorial
- Think Python 2nd
- 一个小小的表白程序(python)
- Python课堂笔记(高淇400集第一季)
- 二级考试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函数编程和讲解
- 顶点小说单本书爬虫.py
- Python开发的个人博客
- 基于python的三层神经网络模型搭建
- python实现自动操作windows应用
- python人脸识别(opencv)
- python 绘图(方形、线条、圆形)
川公网安备 51152502000135号
评论
共有 条评论