爬取猎聘大数据岗位相关信息--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&degradeFlag=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))

原文地址:https://www.cnblogs.com/fredkeke/p/9409560.html

时间: 2024-11-09 01:01:28

爬取猎聘大数据岗位相关信息--Python的相关文章

大数据科学相关岗位,需要具备哪些数学基础?

在不久的将来,大智时代一定会彻底走入我们的生活,多智时代专注于人工智能.大数据.云计算和物联网的入门学习和科谱资讯,让我们一起携手,引领人工智能的未来 数据科学相关岗位要具备哪些数学基础?想成为一名顶级的数据科学家还需要掌握其他领域的知识,比如编程能力.具有一定的商业头脑,以及对数据的独特分析和好奇心态. 有时候,作为一名数据科学家(甚至是团队的初级分析师),你必须全心全意地学习那些基础的数学知识,或者正确地应用这些技术,有时候你可以通过使用一些API或者拿来即用的算法完成相关任务.大数据科学相

python爬虫实例详细介绍之爬取大众点评的数据

python 爬虫实例详细介绍之爬取大众点评的数据 一. Python作为一种语法简洁.面向对象的解释性语言,其便捷性.容易上手性受到众多程序员的青睐,基于python的包也越来越多,使得python能够帮助我们实现越来越多的功能.本文主要介绍如何利用python进行网站数据的抓取工作.我看到过利用c++和Java进行爬虫的代码,c++的代码很复杂,而且可读性.可理解性较低,不易上手,一般是那些高手用来写着玩加深对c++的理解的,这条路目前对我们不通.Java的可读性还可以,就是代码冗余比较多,

基于爬取百合网的数据,用matplotlib生成图表

爬取百合网的数据链接:http://www.cnblogs.com/YuWeiXiF/p/8439552.html 总共爬了22779条数据.第一次接触matplotlib库,以下代码参考了matplotlib官方文档:https://matplotlib.org/users/index.html. 数据查询用到了两个方法:getSexNumber(@sex varchar(2),@income varchar(30)).gethousingNumber(@sex varchar(2),@hou

Python爬取链家二手房数据——重庆地区

最近在学习数据分析的相关知识,打算找一份数据做训练,于是就打算用Python爬取链家在重庆地区的二手房数据. 链家的页面如下: 爬取代码如下: import requests, json, time from bs4 import BeautifulSoup import re, csv def parse_one_page(url): headers={ 'user-agent':'Mozilla/5.0' } r = requests.get(url, headers=headers) so

大数据服务相关站点整理

今天突然来了兴致,想要看看目前有哪些大数据服务相关站点,百度'大数据'翻了十来页,找出了以下站点,[xxx(分类)]是我根据其网站性质定义的标签,如有不妥之处,勿喷. 资讯类: 中国大数据资料和交流中心,[大数据资讯.大数据论坛] http://www.thebigdata.cn/ 紫数网,大数据服务平台,大数据门户[大数据资讯.问答社区] http://www.zishu010.com/ 36大数据,专注大数据应用与商业:[大数据资讯] http://www.36dsj.com/ 大数据中国,

大数据开发相关知识

接触大数据开发相关内容 原文地址:https://www.cnblogs.com/moss-yang/p/8469742.html

爬虫练习五:多进程爬取股市通股票数据

在上网查阅一些python爬虫文章时,看见有人分享了爬取股票的交易数据,不过实现得比较简单.这里就做个小练习,从百度股票批量爬取各股票的交易信息. 文章出处为:Python 爬虫实战(2):股票数据定向爬虫. 爬取数据:每个股票的日度交易数据 爬取来源:百度股市通 python版本:3.6.6 时间:20190115 1. 找到日度数据url 以中化国际的日K数据为例,通过分析网页,我们可以发现,日度交易数据是通过接口的形式获取的. 获取的url为:https://gupiao.baidu.co

Scrapy实战---Scrapy对接selenium爬取京东商城商品数据

本篇目标:我们以爬取京东商城商品数据为例,展示Scrapy框架对接selenium爬取京东商城商品数据. 背景: 京东商城页面为js动态加载页面,直接使用request请求,无法得到我们想要的商品数据,故需要借助于selenium模拟人的行为发起请求,输出源代码,然后解析源代码,得到我们想要的数据. 第一步:设置我们需要提取的字段,也就是在Scrapy框架中设置Item.py文件. class ProductItem(scrapy.Item): # define the fields for y

爬虫黑科技,我是怎么爬取indeed的职位数据的

最近在学习nodejs爬虫技术,学了request模块,所以想着写一个自己的爬虫项目,研究了半天,最后选定indeed作为目标网站,通过爬取indeed的职位数据,然后开发一个自己的职位搜索引擎,目前已经上线了,虽然功能还是比较简单,但还是贴一下网址job search engine,证明一下这个爬虫项目是有用的.下面就来讲讲整个爬虫的思路. 确定入口页面 众所周知,爬虫是需要入口页面的,通过入口页面,不断的爬取链接,最后爬取完整个网站.在这个第一步的时候,就遇到了困难,一般来说都是选取首页和列