最近在找工作,所以爬取了拉钩网的全部python职位,以便给自己提供一个方向。拉钩网的数据还是比较容易爬取的,得到json数据直接解析就行,废话不多说, 直接贴代码:

 import json
import urllib
import urllib2
from openpyxl import load_workbook
filename = 'E:\excel\position_number_11_2.xlsx'
ws = load_workbook(filename=filename)
sheet = ws.create_sheet(0)
sheet.title = 'position'
count = 1 for page in xrange(100):
from_data = {
'first': 'false',
'pn': page,
'kd': 'Python'
} header = {
"User-Agent": 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:49.0) Gecko/20100101 Firefox/49.0',
'Referer': 'https://www.lagou.com/jobs/list_Python?px=default&city=%E5%85%A8%E5%9B%BD',
}
request_url = 'https://www.lagou.com/jobs/positionAjax.json?px=default&needAddtionalResult=false'
data = urllib.urlencode(from_data) request = urllib2.Request(request_url, headers=header, data=data)
try:
html = urllib2.urlopen(request).read().decode('utf-8')
except Exception:
print '没有职位信息'
break
# print html
jsonobj = json.loads(html)
# print jsonobj
dict_obj = jsonobj['content']['positionResult']['result']
for item in dict_obj:
if item:
sheet.cell(row=count, column=1).value = item['companySize']
sheet.cell(row=count, column=2).value = item['workYear']
sheet.cell(row=count, column=3).value = item['education']
sheet.cell(row=count, column=4).value = item['financeStage']
sheet.cell(row=count, column=5).value = item['city']
sheet.cell(row=count, column=6).value = item['industryField']
sheet.cell(row=count, column=7).value = item['formatCreateTime']
sheet.cell(row=count, column=8).value = item['positionName']
sheet.cell(row=count, column=9).value = item['companyFullName']
sheet.cell(row=count, column=10).value = item['salary']
count += 1
ws.save('E:\excel\position_number_11_2.xlsx')

代码写得比较急,就没怎么规范。 过两天把微博和豆瓣的代码发出来,希望园里的大神多指点^_^

拉钩网爬取所有python职位信息的更多相关文章

  1. 爬取拉钩网上所有的python职位

    # 2.爬取拉钩网上的所有python职位. from urllib import request,parse import json,random def user_agent(page): #浏览 ...

  2. 拉勾网爬取全国python职位并数据分析薪资,工作经验,学历等信息

    首先前往拉勾网“爬虫”职位相关页面 确定网页的加载方式是JavaScript加载 通过谷歌浏览器开发者工具分析和寻找网页的真实请求,确定真实数据在position.Ajax开头的链接里,请求方式是PO ...

  3. python爬虫实战之爬取智联职位信息和博客文章信息

    1.python爬取招聘信息 简单爬取智联招聘职位信息 # !/usr/bin/env python # -*-coding:utf-8-*- """ @Author  ...

  4. 通俗易懂的分析如何用Python实现一只小爬虫,爬取拉勾网的职位信息

    源代码:https://github.com/nnngu/LagouSpider 效果预览 思路 1.首先我们打开拉勾网,并搜索"java",显示出来的职位信息就是我们的目标. 2 ...

  5. 爬取拉勾网python工程师的岗位信息并生成csv文件

    转载自:https://www.cnblogs.com/sui776265233/p/11146969.html 代码写得很好,但是目前只看得懂前一部分 一.爬取和分析相关依赖包 Python版本: ...

  6. 用Python爬取智联招聘信息做职业规划

    上学期在实验室发表时写了一个爬取智联招牌信息的爬虫. 操作流程大致分为:信息爬取——数据结构化——存入数据库——所需技能等分词统计——数据可视化 1.数据爬取 job = "通信工程师&qu ...

  7. [Python爬虫] Selenium爬取新浪微博客户端用户信息、热点话题及评论 (上)

    转载自:http://blog.csdn.net/eastmount/article/details/51231852 一. 文章介绍 源码下载地址:http://download.csdn.net/ ...

  8. 使用python scrapy爬取知乎提问信息

    前文介绍了python的scrapy爬虫框架和登录知乎的方法. 这里介绍如何爬取知乎的问题信息,并保存到mysql数据库中. 首先,看一下我要爬取哪些内容: 如下图所示,我要爬取一个问题的6个信息: ...

  9. python爬取 “得到” App 电子书信息

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: 静觅 崔庆才 PS:如有需要Python学习资料的小伙伴可以加点击下 ...

随机推荐

  1. context.response.end()和return的区别

    最近忽然想起这个问题,上网查了很多,觉得这个网友回答的很给力,从本质上剖析了问题.最后发现这篇文章也是转载自博客园的一位网友.http://www.cnblogs.com/adolphyang/p/4 ...

  2. HTML target 属性

    定义和用法 <a> 标签的 target 属性规定在何处打开链接文档. 如果在一个 <a> 标签内包含一个 target 属性,浏览器将会载入和显示用这个标签的 href 属性 ...

  3. UIImage学习笔记

    UIImage是什么 用来管理APP里的图片资源,可以用来表示设备支持的图片资源,不仅仅是jpg和png. UIImage是immutable的,因此也是线程安全的. iOS支持的所有的图片格式 链接 ...

  4. USACO 4.2 Drainage Ditches(网络流模板题)

    Drainage DitchesHal Burch Every time it rains on Farmer John's fields, a pond forms over Bessie's fa ...

  5. ShopNC_WAP

    记录 ShopNC_WAP 端点点滴滴 插件记录 1.  http://www.jiawin.com/swipe-mobile-touch-slider   swiper 插件 2. https:// ...

  6. express 4.x 文件上传

    1.安装文件上传模块: npm install multiparty --save 2.在routes/index.js 中添加: // 引用模块 let multiparty = require(& ...

  7. C#中对属性和字段的理解

    字段 C#中很少提到全局变量的概念, 引入了字段一词来代替全局变量, 但也并不是这样简单的, 字段会比全局变量的使用更难理解, 使用上会简单, 初学者当做成员变量或者全局变量不会有什么影响, 随着使用 ...

  8. 有关C语言学习的调查

    有关C语言学习的调查 1.Q:你是怎么学习C语言的?(作业,实验,教材,其他),与你的高超技能相比,C语言的学习有什么经验和教训? A:之间在暑假的之后自己有买了一本C PRIME PLUS 来看基本 ...

  9. express mongoose 新手上路 问题记录

    1.npm start启动报错,提示端口占用 app.js中添加了app.listen(3000),删掉即可 2.跳转到html页面 //ejs改为html app.engine('.html', r ...

  10. [SQL基础教程] 2-3 逻辑运算符

    [SQL基础教程] 2-3 逻辑运算符 NOT AND OR 优先级 ( )改变优先级 AND 优先级高于 OR NULL 引入三值逻辑