爬取猎聘python_爬取猎聘大数据岗位相关信息--Python
猎聘网站搜索大数据关键字,只能显示100页,爬取这一百页的相关信息,以便做分析。
__author__ = ‘Fred Zhao‘
import requests
from bs4 import BeautifulSoup
import os
import csv
class JobSearch():
def __init__(self):
self.headers = {
‘User-Agent‘: ‘Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36‘}
self.base_url = ‘https://www.liepin.com/zhaopin/?ckid=c1a868fa8b83aa5b&fromSearchBtn=2&init=-1&sfrom=click-pc_homepage-centre_searchbox-search_new°radeFlag=0&key=大数据&headckid=c1a868fa8b83aa5b&d_pageSize=40&siTag=LGV-fc5u_67LtFjetF6ACg~fA9rXquZc5IkJpXC-Ycixw&d_headId=8e7325814e7ed9919787ee3fe85e1c94&d_ckId=8e7325814e7ed9919787ee3fe85e1c94&d_sfrom=search_fp&d_curPage=99&curPage=‘
self.base_path = os.path.dirname(__file__)
def makedir(self, name):
path = os.path.join(self.base_path, name)
isExist = os.path.exists(path)
if not isExist:
os.makedirs(path)
print("File has been created.")
else:
print(‘OK!The file is existed. You do not need create a new one.‘)
os.chdir(path)
def request(self, url):
r = requests.get(url, headers=self.headers)
return r
def get_detail(self, page):
r = self.request(self.base_url + page)
ul = BeautifulSoup(r.text, ‘lxml‘).find(‘ul‘, class_=‘sojob-list‘)
plist = ul.find_all(‘li‘)
self.makedir(‘job_data‘)
rows = []
for item in plist:
job_info = item.find(‘div‘, class_=‘sojob-item-main clearfix‘).find(‘div‘, class_=‘job-info‘)
position = job_info.find(‘h3‘).get(‘title‘)
print(position)
job_info_list = job_info.find_all(‘p‘)
job_condition = job_info_list[0].get(‘title‘)
print(job_condition)
job_time = job_info_list[1].find(‘time‘).get(‘title‘)
print(job_time)
company_info = item.find(‘div‘, class_=‘sojob-item-main clearfix‘).find(‘div‘, class_=‘company-info‘)
company = company_info.find(‘p‘, class_=‘company-name‘).find(‘a‘).get(‘title‘)
print(company)
rows.append([position, job_condition, job_time, company])
self.save_to_csv(rows)
def save_to_csv(self, rows):
with open(‘job.csv‘, ‘a‘) as f:
writer = csv.writer(f)
writer.writerows(rows)
if __name__ == ‘__main__‘:
job = JobSearch()
for page in range(0, 100):
job.get_detail(str(page))
爬取猎聘python_爬取猎聘大数据岗位相关信息--Python相关推荐
- Python爬虫 抓取大数据岗位招聘信息(51job为例)
简单介绍一下爬虫原理.并给出 51job网站完整的爬虫方案. 爬虫基础知识 数据来源 网络爬虫的数据一般都来自服务器的响应结果,通常有html和json数据等,这两种数据也是网络爬虫的主要数据来源. ...
- Python爬虫,爬取51job上有关大数据的招聘信息
Python爬虫,爬取51job上有关大数据的招聘信息 爬虫初学者,练手实战 最近在上数据收集课,分享一些代码. 分析所要爬取的网址 https://search.51job.com/list/000 ...
- 使用scrapy爬取前程无忧所有大数据岗位并做出数据可视化
项目目录 项目要求 工具 软件 具体知识点 具体要求 数据源 爬取字段 数据存储 数据分析与可视化 具体步骤 分析网页 实现代码 抓取全部岗位的网址 字段提取 可视化 分析"数据分析&quo ...
- 深圳python数据分析师招聘_Python爬取智联招聘数据分析师岗位相关信息的方法
Python爬取智联招聘数据分析师岗位相关信息的方法 发布时间:2020-09-23 23:23:12 来源:脚本之家 阅读:88 进入智联招聘官网,在搜索界面输入'数据分析师',界面跳转,按F12查 ...
- 怎样给孩子取一个好名字?搜狗“有名堂”大数据支招
http://pinyin.sogou.com/youmingtang/ 在中国文化里,起名字是一件非常讲究的事情.给孩子起名字,既要考虑文字本身的涵义,又要读起来朗朗上口.那么,到底怎样才能给孩子取 ...
- boss直聘python_爬Boss直聘,分析2019下半年Python工作现状
引子 要说在当今的编程圈,找10位程序猿询问下当前世界上最好的语言是哪个,那必须是 PHP(强迫症)!但是如果你询问当今最火爆的语言是哪个,那么80%的小伙伴儿会毫不犹豫的告诉你,是 Python! ...
- A表取数据处理后插入B表,Mysql大数据插入,优化过程
情景:A表中有20万条数据,取出处理,然后插入B表. 第一版:分页取出,组成sql语句.批量插入数据 $tempData = $this->model->page($page,'1000' ...
- 史上最全,几百本常用书籍等你来取(面试,java,c,大数据,AI,python,数据结构等)
获取方式 : https://github.com/XiangLinPro/IT_book 获取方式 : https://github.com/XiangLinPro/IT_book
- 大数据认证为什么学python_大数据为什么需要学python?
Python是数据科学中使用最广泛的编程语言 用Python管理大数据 许多Python库对于数据分析和机器学习特别有用.这些库为处理大数据提供了无数的支持,使Python成为大数据最受欢迎的语言. ...
最新文章
- 微信小程序API·目录
- 邮件系统常见错误代码解释 --邮件服务器端(MTA)错误代码解释
- 确定msm8937+android7.1采用的dtb文件
- php 方法求 的近似值,PHP中的等角近似
- 信息系统项目管理师-常用技术标准考点笔记
- 电脑底部任务栏点不动_「方法」在电脑上使用小程序的方法
- python的os模块基本使用
- Java串口包Javax.comm的安装
- [最全操作指南] 在线六个项目全部迁移Linux
- PHP学习笔记03:简单网上调查站点
- java调用python脚本并向python脚本传递参数
- C#编程(七)----------命名空间
- 哪种存储器是非易失的_非易失性存储器和易失性存储器有什么全部详细资料对比...
- Java第三方库——Jep数学公式计算
- win10自动停用打印服务器,雨林木风win10系统添加打印机总是自动关闭打印服务的方法...
- 俄罗斯方块,消消乐源码下载
- 用c语言实现基本数据结构(图)
- 计算机课代表总结与反思,生物课代表总结与反思(38页)-原创力文档
- win10开机慢怎么解决_win10开机速度变慢的解决方法教程
- excel计算机基础知识考试题,2017年计算机excel基础考试题「附答案」
热门文章
- 汽车之家店铺数据抓取 DotnetSpider实战[一]
- .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions
- 开源分享 Unity3d客户端与C#分布式服务端游戏框架
- 互联网级监控系统必备-时序数据库之Influxdb技术
- 实现自己的.NET Core配置Provider之Yaml
- 理想的互联网服务后台框架的九个要点
- Asp.Net Core 发布和部署(Linux + Jexus )
- C#读书雷达 | TW洞见
- GIS专业核心课程电子教材配套实验数据汇总(持续更新)
- C和指针之字符串编程练习3