BOSS直聘网爬虫初尝试
1、需求分析
通过搜索职位关键字,来获取该职位的招聘信息,信息包括:岗位的名称,招聘的公司,公司所在地,工作经验要求,学历要求
2、技术分析
代码语言:python;
所需要的类库:requests、BeautifuiSoup
3、详细分析
在BOSS直聘网站搜索框上搜索关键字:Java
图1 搜索关键字
观察下其跳转链接,发现其请求的方式为get,那么,我们就需要构造一个请求的链接。
图2 目标链接地址
图3 请求的参数
def get_target_link(keyword): data = { \'query\': keyword, \'scity\': 101280600, \'industry\':\'\', \'position\':\'\' } queries = urlencode(data) url = base_url + queries
现在只需要传入一个keyword,就能构造出一个职位的链接地址了,那么下面就需要解析这个地址的内容
def get_target_content(url,keyword): try: response = requests.get(url = url,headers = headers) if response.status_code == 200: parser_target_content(response.text,keyword) else: print("Request failed") except RequestException as e: print(e)
这段代码解析出页面的内容之后,再去调用parser_target_content这个函数,解析目标内容
def parser_target_content(content,keyword): job_info = [] soup = BeautifulSoup(content,"lxml") s = soup.find_all("div",class_="job-list") for i in s: m = i.find_all("li") for j in m: job_info.append(j) parser_detail_jobinfo(job_info) def parser_detail_jobinfo(job_info): for i in job_info: s = i.find_all("div",class_="job-primary") for j in s: job_name = j.find("div",class_="job-title").get_text() job_wage = j.find("span").get_text() company_location = re.search(r"([\u4e00-\u9fa5]{2})(\s{2})", str(j).replace("\n","")).group(1) work_experience = re.search(r"</em>(.*)<em",str(j)).group(1) #aca_require = re.search(r"em>(.{2})</p>", str(j)).group(1) m = j.find_all("div",class_="company-text") for k in m: company = k.find("a").get_text() print(company,job_name,job_wage,company_location,work_experience)
一页的内容有了,下面的问题是如何把全部属于这个关键字的职位页面打开来,浏览发现,底部并没有最后一页的地址,所有说,不能通过最后一页的地址用循环遍历所有的页面,如何解决?
图4 页码分布
观察下面两张截图,图5是首页的,图6是末页的
图5 页码截图1
图6 页码截图2
发现,一个是class = “next”,另一个是:class = “next disabled”,所以,只需要从当前(第一页)开始判断,class = “next”是否成立,如果成立,则获得下一页的链接,然后递归继续解析下一页的内容,反之,则退出判断
def get_href(URL): response = requests.get(url = URL, headers = headers).text soup = BeautifulSoup(response,"lxml") s = soup.find_all("div",class_="page") for i in s: h = i.find_all("a") for j in h[-1:]: href = "https://www.zhipin.com/" + j.get("href") return href def judge_nextpage(href): response = requests.get(url = href, headers = headers).text soup = BeautifulSoup(response, "lxml") s = soup.find_all("div", class_="page") for i in s: h = i.find_all("a") ka = re.search(r\'class="(.*) href=\"\',str(h[-1])).group(1).strip("\"") if ka == "next": return True def print_href(url,keyword): get_target_content(url, keyword) href = get_href(url) flag = judge_nextpage(href) if flag == True: print_href(href,keyword)
4、爬取结果
欢迎使用BOSS直聘职位分析系统!
请输入要查询的职位:Java
易程文化 JAVA开发工程师 10k-20k 深圳 3-5年
求势科技 Java中级工程师 12k-20k 深圳 1-3年
七点半传媒科技 Java 15k-20k 深圳 1年以内
有棵树 JAVA开发工程师(中高级) 10k-15k 深圳 3-5年
博奥特 初中级JAVA开发 10k-16k 深圳 1-3年
鱼群资讯 java开发工程师 10k-20k 深圳 1-3年
厂家网商城 Java搜索工程师 10k-15k 深圳 3-5年
顶脉科技 Java 10k-15k 深圳 1-3年
平安付 初级/中级/高级/资深Java开发工程师 15k-30k 深圳 3-5年
蚂蚁金服 蚂蚁金服深圳JAVA专场通道(Fast) 23k-42k 深圳 应届生
快优 Java资深工程师 12k-20k 深圳 3-5年
爱加密 JAVA开发工程师 10k-15k 深圳 1-3年
四方精创 Java 16k-25k 深圳 5-10年
乐达实业 Java开发 6k-12k 深圳 3-5年
好实再 中级Java工程师 12k-16k 深圳 3-5年
龙广投资 Java 5k-10k 深圳 1-3年
蚂蚁金服 Java 25k-50k 深圳 3-5年
联合永道 Java开发工程师 9k-13k 深圳 1-3年
亿腾信息 Java开发工程师(电商项目) 11k-13k 深圳 1-3年
土巴兔 Java 10k-18k 深圳 3-5年
明链科技 Java 7k-14k 深圳 1年以内
上海易立德 Java系统架构师 14k-16k 深圳 5-10年
掌控移动 java开发工程师助理 3k-4k 深圳 应届生
阿里巴巴集团 Java 开发工程师实习生 20k-40k 深圳 应届生
卖座网 全栈工程师(C/C++、JAVA、Golang) 20k-30k 深圳 3-5年
深圳标越科技 高级java 18k-28k 深圳 5-10年
顶尖传奇 java架构师 50k-80k 深圳 5-10年
越凡物联 java 前、后端开发 8k-15k 深圳 1-3年
兔展 高级Java开发工程师 18k-35k 深圳 5-10年
软通动力 java开发工程师 8k-16k 深圳 3-5年
中软国际 Java 10k-15k 深圳 1-3年
丰瑞 java开发工程师 8k-16k 深圳 1-3年
华夏软件 Java 开发及大数据实施 5k-6k 深圳 1-3年
北京中讯汉扬 Java架构师 15k-30k 深圳 5-10年
巨益科技 Java 15k-25k 深圳 1-3年
万达信息 Java 9k-12k 深圳 3-5年
企链数字 Java 10k-20k 深圳 5-10年
深圳市聚一科技 Java 10k-20k 深圳 3-5年
给乐科技 资深java工程师/java技术经理 22k-30k 深圳 5-10年
阿里巴巴零售通 Java 20k-40k 深圳 3-5年
云沃客 Java工程师 8k-15k 深圳 1-3年
同方鼎欣 Java(深圳平安) 11k-16k 深圳 3-5年
人人聚财 Java开发工程师 10k-18k 深圳 1-3年
SIE Java软件开发工程师 10k-20k 深圳 3-5年
科脉技术 JAVA高级开发工程师 15k-25k 深圳 5-10年
阿里巴巴集团 后台Java开发 20k-40k 深圳 3-5年
一青三濛电子游艺 java开发 11k-17k 深圳 1-3年
道一信息 java实习生 3k-4k 深圳 应届生
几米 JAVA高级开发工程师 15k-25k 深圳 3-5年
创领网络 JAVA开发工程师 15k-20k 深圳 3-5年
三泰智能 技术支持工程师(java方向) 8k-15k 深圳 1-3年
环金科技 Java高级工程师 15k-20k 深圳 5-10年
深圳块店智能科技有限公司 Java开发工程师 10k-20k 深圳 3-5年
韶关市大鲲互动网… Java工程师 6k-8k 深圳 1-3年
亿腾信息 JAVA开发工程师 11k-13k 深圳 1-3年
博彦科技 java开发工程师 9k-17k 深圳 3-5年
顺丰科技 Java高级工程师 20k-40k 深圳 5-10年
中科智慧 Java中级开发工程师 10k-15k 深圳 1-3年
华为技术有限公司 Java 30k-50k 深圳 5-10年
软通动力 Java架构师 20k-30k 深圳 5-10年
蚂蚁金服 Java资深开发工程师 25k-50k 深圳 不限
跨海侠 java开发工程师 15k-25k 深圳 3-5年
星火电子 java工程师 8k-15k 深圳 3-5年
达普信 Java开发工程师 8k-10k 深圳 1-3年
浪尖设计 JAVA工程师 15k-30k 深圳 5-10年
雁联技术 JAVA 12k-14k 深圳 3-5年
关贸云 java开发 10k-17k 深圳 1-3年
跨海侠 高级java开发工程师 15k-30k 深圳 5-10年
汇金智融 深圳java初中级工程师 7k-14k 深圳 1-3年
海峡投资管理 高级JAVA开发 5k-10k 深圳 1-3年
普拉科技 Java 1k-2k 深圳 不限
里莫信息 Java工程师(微信开发) 8k-15k 深圳 1-3年
达普信 Java开发 12k-16k 深圳 3-5年
求势科技 Java高级工程师 15k-28k 深圳 3-5年
厂家网商城 Java高级工程师 15k-20k 深圳 5-10年
小钱科技 Java 35k-50k 深圳 5-10年
壹线科技 Java 5k-10k 深圳 1年以内
矩阵元 Java开发工程师 18k-25k 深圳 3-5年
科码先锋 Java开发工程师 15k-25k 深圳 3-5年
艾游星空 Java 15k-20k 深圳 3-5年
有赞 高级Java开发 16k-30k 深圳 3-5年
易买屋信息科技 java开发工程师 15k-20k 深圳 3-5年
海雅集团 JAVA开发工程师 6k-8k 深圳 1年以内
易买屋信息科技 Java开发开程师 8k-15k 深圳 1-3年
深圳中电技术 Java开发 12k-18k 深圳 3-5年
彩生活 JAVA工程师 7k-8k 深圳 1-3年
新国都 java开发工程师(IT) 12k-15k 深圳 3-5年
平安科技 资深java开发工程师 18k-30k 深圳 3-5年
小码教育 JAVA讲师 8k-10k 深圳 不限
上海华腾 Java 10k-18k 深圳 3-5年
拓略 java工程师 5k-6k 深圳 1年以内
左邻 Java开发工程师 15k-20k 深圳 3-5年
平安科技 (ZP)资深Java开发工程师 15k-30k 深圳 不限
超巨星 JAVA初中级开发工程师 7k-13k 深圳 1-3年
软通动力 java开发 11k-13k 深圳 1-3年
软通动力 中高级Java开发工程师 10k-20k 深圳 3-5年
上海七圣网络科技 java工程师 8k-12k 深圳 1-3年
深圳小脑壳网络科… Java 10k-15k 深圳 3-5年
阿里巴巴集团 Java 25k-40k 深圳 1-3年
平安科技 Java架构师 20k-40k 深圳 不限
武汉佰钧成 Java Web开发 7k-13k 深圳 1-3年
云涛创展科技 Java 6k-10k 深圳 1年以内
土巴兔 Java 15k-30k 深圳 3-5年
OPPO Java 20k-35k 深圳 3-5年
文思海辉集团 Java开发工程师 11k-19k 深圳 3-5年
永兴元 Java开发工程师(深圳) 7k-13k 深圳 1-3年
雨花石云计算 Java开发工程师(18届、17届) 6k-8k 深圳 1-3年
海梁科技 初级JAVA软件工程师 8k-15k 深圳 1-3年
素由 Java 8k-12k 深圳 1-3年
软通动力 Java 20k-30k 深圳 3-5年
前海福道技术 JAVA开发工程师 20k-30k 深圳 5-10年
唯依欧多贸易 java 15k-20k 深圳 3-5年
汇金智融 深圳中高级java 10k-18k 深圳 3-5年
兔展 高级Java开发工程师 18k-35k 深圳 5-10年
亿科传媒 高级JAVA开发 15k-25k 深圳 3-5年
软通动力 Java开发 15k-25k 深圳 5-10年
LEOMASTER Java服务端研发工程师 15k-30k 深圳 3-5年
启航科技 Java软件开发工程师 8k-14k 深圳 1-3年
联龙博通 java开发工程师(深圳) 9k-18k 深圳 1-3年
莘达科技 Java初级开发工程师 4k-7k 深圳 应届生
上海易立德 中级Java开发工程师 10k-11k 深圳 3-5年
大连斯锐信息技术公司 Java开发(佛山) 9k-12k 深圳 3-5年
长亮 Java开发 10k-15k 深圳 3-5年
莘达科技 java初级开发工程师 4k-6k 深圳 应届生
长泉科技 Java 2k-4k 深圳 1年以内
雁联技术 初级Java开发工程师 8k-11k 深圳 1-3年
汇智众通 Java开发工程师 7k-12k 深圳 1-3年
六六玩科技 Java服务器开发工程师 6k-10k 深圳 1-3年
艾姆拜氪 JAVA后台开发 20k-30k 深圳 3-5年
软通动力 Java开发 13k-26k 深圳 5-10年
伟业兴科技 JAVA高级工程师 12k-20k 深圳 5-10年
采集科技 JAVA 9k-18k 深圳 3-5年
穗彩科技 Java(初中级) 6k-10k 深圳 1-3年
前海招文天下金融 java开发师 5k-10k 深圳 1-3年
开科唯识 中高级Java开发工程师-深圳 9k-16k 深圳 3-5年
华微软件 Java 9k-18k 深圳 1-3年
汇金智融 初级Java开发 8k-15k 深圳 1-3年
顺丰科技 Java架构师 35k-60k 深圳 5-10年
四方精创 Java 12k-22k 深圳 3-5年
博彦科技 java web 10k-15k 深圳 3-5年
易宝软件 Java 15k-30k 深圳 3-5年
全药网 Java 10k-18k 深圳 3-5年
云智惠 Java高级工程师 20k-35k 深圳 5-10年
软通动力 Java开发 8k-16k 深圳 3-5年
大疆创新 Java工程师 15k-30k 深圳 1-3年
昆明尚网科技有限公司 Java开发工程师 8k-15k 深圳 1-3年
蚂蚁金服 蚂蚁金服深圳JAVA专场通道(快招) 18k-33k 深圳 3-5年
长亮 Java工程师 10k-15k 深圳 3-5年
大连斯锐信息技术公司 java开发工程师 12k-15k 深圳 3-5年
英飞拓 JAVA 8k-15k 深圳 3-5年
蚂蚁金服 蚂蚁金服深圳JAVA专场通道(快招) 20k-40k 深圳 3-5年
腾讯 Java 15k-30k 深圳 3-5年
无极云区块链互联网 Java高级工程师 25k-35k 深圳 5-10年
深圳泰久信息 中高级Java开发工程师 10k-20k 深圳 3-5年
软通动力 java开发工程师 9k-18k 深圳 1-3年
采集科技 JAVA高级开发 14k-28k 深圳 5-10年
华曦达科技 Java项目经理 10k-20k 深圳 3-5年
国富黄金 高级Java开发工程师 20k-40k 深圳 5-10年
上海睿民科技 Java开发工程师(base深圳) 8k-16k 深圳 3-5年
明理信息科技 Java开发工程师 10k-20k 深圳 1-3年
汇金智融 Java开发工程师 10k-18k 深圳 3-5年
格致诚投资 Java 12k-18k 深圳 3-5年
哨子科技 中高级Java工程师 15k-30k 深圳 3-5年
健康160 Java 15k-30k 深圳 3-5年
华为技术有限公司 Java 20k-35k 深圳 5-10年
柚安米 Java高级开发工程师 15k-25k 深圳 5-10年
共享明天 Java工程师 10k-15k 深圳 3-5年
上海睿民科技 JAVA开发工程师 7k-14k 深圳 1-3年
亿腾信息 中山证券JAVA开发工程师 12k-14k 深圳 3-5年
海尔集团 Java工程师 18k-20k 深圳 3-5年
华云中盛 高级Java开发 15k-30k 深圳 3-5年
易买屋信息科技 高级Java开发工程师 15k-25k 深圳 3-5年
雅士长华 高级Java工程师 13k-25k 深圳 3-5年
灵游互娱 JAVA工程师 10k-20k 深圳 3-5年
赛象信息 java开发(深圳) 10k-16k 深圳 3-5年
兴融联科技 java工程师 10k-18k 深圳 3-5年
深圳国开创新科技 java 10k-16k 深圳 1-3年
博奥特 中高级JAVA工程师 12k-22k 深圳 3-5年
链报信息咨询有限公司 java工程师 8k-16k 深圳 1-3年
长亮 Java开发工程师 9k-15k 深圳 3-5年
Oracle SaaS高级Java开发工程师 23k-46k 深圳 5-10年
蜂后科技 Java开发工程师 10k-15k 深圳 3-5年
软通动力 Java自动化测试 9k-18k 深圳 1-3年
合泰文化 Java工程师 10k-15k 深圳 3-5年
深圳软盟技术 java工程师 12k-20k 深圳 3-5年
赤骥商贸有限公司 Java开发工程师 8k-15k 深圳 1-3年
赛象信息 Java开发 10k-20k 深圳 3-5年
昆明尚网科技有限公司 高级java后台开发 15k-30k 深圳 3-5年
无极云 高级java架构师 25k-50k 深圳 5-10年
思迪信息 JAVA开发工程师 9k-15k 深圳 3-5年
昂纳集团 Java 7k-14k 深圳 1-3年
深圳市大白菜 中级JAVA开发工程师 14k-18k 深圳 3-5年
汇金智融 深圳java工程师 8k-16k 深圳 3-5年
深圳市脉山龙信息… Java开发工程师 12k-15k 深圳 1-3年
软通动力 Java 10k-20k 深圳 5-10年
长亮 java工程师 10k-15k 深圳 3-5年
风神科技 Java游戏服务端 8k-15k 深圳 1-3年
长亮 Java 10k-15k 深圳 3-5年
微筑科技 Java架构师 30k-50k 深圳 5-10年
卡为集团 JAVA工程师 12k-18k 深圳 1-3年
爱淘苗电商 java开发工程师 10k-15k 深圳 3-5年
博彦科技 java开发工程师 9k-10k 深圳 3-5年
国政信 Java开发工程师 6k-12k 深圳 1-3年
恒信融通金融 JAVA工程师 7k-12k 深圳 1-3年
和而泰 Java开发工程师 13k-22k 深圳 3-5年
广州赤骥商贸有限公司 深圳JAVA 12k-20k 深圳 3-5年
平安科技 (JC)资深Java开发工程师 15k-30k 深圳 不限
邦德教育 Java开发工程师 7k-8k 深圳 1-3年
好科科技 Java 20k-40k 深圳 5-10年
德科信息 Java高级开发工程师 15k-20k 深圳 5-10年
乐道互联网 Java架构师 30k-60k 深圳 5-10年
盒淘电商 java高级架构师 30k-50k 深圳 5-10年
深圳信汇泰 Java开发 10k-20k 深圳 1-3年
瑞泰信资讯 JAVA接口开发工程师 5k-10k 深圳 1-3年
上海长亮 Java 10k-20k 深圳 3-5年
阿里巴巴集团 9月深圳专场-高级JAVA工程师/专家 20k-40k 深圳 5-10年
蚂蚁金服 蚂蚁金服深圳JAVA专场通道(快招) 30k-50k 深圳 3-5年
深圳雁联 JAVA中级【深圳–罗湖】 9k-14k 深圳 1-3年
超级猩猩健身 Java研发工程师 10k-20k 深圳 1-3年
蚂蚁金服 蚂蚁金服深圳JAVA专场通道(快招) 18k-31k 深圳 不限
梦蓝网络 Java 10k-13k 深圳 3-5年
阿法加科技 中高级java开发工程师 15k-30k 深圳 5-10年
熠宸信息 JAVA软件工程师 8k-10k 深圳 1-3年
四方精创 Java工程师 15k-25k 深圳 3-5年
华为 Java 17k-34k 深圳 不限
小源科技 Java开发工程师 13k-20k 深圳 1-3年
华夏软件 Java开发及大数据实施 5k-6k 深圳 3-5年
赤骥商贸有限公司 java 12k-15k 深圳 3-5年
菠萝三维 JAVA开发工程师 9k-15k 深圳 1-3年
瑞泰信资讯 JAVA资深开发工程师 12k-24k 深圳 3-5年
跨越速运 高级JAVA工程师 15k-30k 深圳 5-10年
有赞 Java – base杭州 16k-30k 深圳 3-5年
智慧享联 Java 15k-30k 深圳 5-10年
江融信 Java中级工程师 15k-25k 深圳 3-5年
喜盈佳 Java后端开发/springboot 12k-20k 深圳 5-10年
北京东成云凯科技股份 Java 6k-9k 深圳 1-3年
生银万国 Java 8k-15k 深圳 1-3年
甘瑞利 java 10k-20k 深圳 1-3年
讯毅网络 Java工程师 15k-25k 深圳 3-5年
四方精创 JAVA开发工程师 12k-22k 深圳 3-5年
河马互娱 JAVA开发游戏工程师 15k-20k 深圳 1-3年
红茶移动 Java工程师 10k-20k 深圳 1-3年
比特空间 JAVA架构师 20k-35k 深圳 5-10年
云沃客 java开发 10k-15k 深圳 1-3年
中顺易 Java开发工程师 15k-20k 深圳 3-5年
哔吡互娱 Java 14k-20k 深圳 3-5年
蚂蚁金服 蚂蚁国际深圳研发中心Java高级开发工程师 20k-40k 深圳 3-5年
普拉科技 Java 2k-3k 深圳 不限
海康威视 JAVA工程师 10k-15k 深圳 1-3年
华世恒通网络科技 高级java工程师 15k-20k 深圳 5-10年
用友金融 Java 10k-13k 深圳 3-5年
柚安米 JAVA开发工程师 16k-25k 深圳 3-5年
天源迪科 Java 8k-15k 深圳 3-5年
亚太卫星 Java高级工程师 10k-18k 深圳 3-5年
软通动力 Java 15k-25k 深圳 不限
中软国际 Java 10k-20k 深圳 1-3年
银信科技 JAVA开发工程师 13k-23k 深圳 3-5年
深圳雁联 JAVA软件工程师(中级)【深圳】 9k-14k 深圳 1-3年
中软国际 Java开发 12k-24k 深圳 1-3年
易聆科 JAVA开发工程师 7k-9k 深圳 1-3年
蚂蚁金服 蚂蚁金服深圳JAVA专场通道(快招) 18k-33k 深圳 3-5年
深圳万谷盛世 Java Spring 后端高级工程师 20k-30k 深圳 5-10年
深圳一声笑科技 Java架构师 20k-30k 深圳 3-5年
深圳鼎游 Java开发工程师 5k-8k 深圳 不限
LEVE乐无 JAVA高级工程师 15k-25k 深圳 3-5年