利用Python获取赶集网招聘信息前篇


Posted in Python onApril 18, 2016

如何获取一个网站的相关信息,获取赶集网的招聘信息,本文为大家介绍利用python获取赶集网招聘信息的关键代码,供大家参考,具体内容如下

import re
import urllib
import urllib.request
#获取赶集网数据
def begin(url):
  #要伪装成的浏览器(我这个是用的chrome)
  headers = ('User-Agent','Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36')
  opener = urllib.request.build_opener()
  #将要伪装成的浏览器添加到对应的http头部
  opener.addheaders=[headers]
  #读取相应的url
  data = opener.open(url).read()
  #将获得的html解码为utf-8
  data=data.decode('utf-8')
  return data
#处理数据,返回字典城市对应城市的url
def get_cityinfo(data):
  city_info1=re.findall(r'dl>(.*?)</dl>',data,re.S)
  city_info2=re.findall(r'(<a.*?</a>)',city_info1[0],re.S)
  city_dict={}
  for each in city_info2:
    key=re.findall('>(.*?)</',each,re.S)
    city_url=re.findall('href="(.*?)"',each,re.S)
    city_dict[key[0]]=city_url[0]
  return city_dict
#获取所有的a标签,并从a标签中获取信息
def a_info(data):
  a_info=re.findall(r'(<a.*?</a>)',data[0],re.S)
  a_dict={}
  for each in a_info:
    key=re.findall('>(.*?)</',each,re.S)
    a_url=re.findall('"(.*?)"',each,re.S)
    a_dict[key[0]]=a_url[0]
  return a_dict
#获取对应城市信息的所有分类
def get_cityinfoclass():
    #目前先获取招聘信息,后面有时间再继续补充完善这个模块
  info= 'zhaopin/'
  return info
#获取对应城市和其城市分类的信息
def getzhaopin(city_info,infoclass):
  #先搞成都的信息招聘
  city_url=city_info['成都']
  cdzp_url=city_url+infoclass
  cdzp_info=begin(cdzp_url)
  return city_url,cdzp_info
#获取成都市招聘信息
def get_zhaopin_info(city_url,cdzp_info):
  allzp_info=re.findall('class="f-all-news"(.*?)</div>',cdzp_info,re.S)
  a_dict={}
  class_info=re.findall('<dd>(.*?)</dd>',allzp_info[0],re.S)
  for each in class_info:
    a_info=re.findall(r'(<a.*?</a>)',each,re.S)
    for each1 in a_info:
      key=re.findall('>(.*?)</',each1,re.S)
      a_url=re.findall('href="/(.*?)"',each1,re.S)
      a_dict[key[0].strip()]=city_url+a_url[0]
  return a_dict
#获取招聘信息的具体内容
def get_city_zpinfo_detail(url):
  #先获取软件工程师
  sorft_engineer=(zp_class_info['软件工程师'])
  job_url_info=begin(sorft_engineer)
  get_detail_info(job_url_info)
#处理详情页的信息
def get_detail_info(list_info):
  job_info=re.findall('<dl class="list-noimg job-list clearfix"(.*?)</dl',list_info,re.S)
  print(job_info[0])
if __name__=='__main__':
  url='http://www.ganji.com/index.htm';
  data=begin(url);
  #所有城市信息
  city_info=get_cityinfo(data)
  #对应的分类
  infoclass=get_cityinfoclass()
  cdzp_url,xiaoshou=getzhaopin(city_info,infoclass)
  #获取招聘的分类信息
  zp_class_info=get_zhaopin_info(cdzp_url,xiaoshou)
  get_city_zpinfo_detail(zp_class_info)

以上就是本文的全部内容,希望对大家的学习有所帮助。

Python 相关文章推荐
10款最好的Web开发的 Python 框架
Mar 18 Python
python清除字符串里非数字字符的方法
Jul 02 Python
Python中字符串的处理技巧分享
Sep 17 Python
Python解析excel文件存入sqlite数据库的方法
Nov 15 Python
Python3.7 新特性之dataclass装饰器
May 27 Python
python os.fork() 循环输出方法
Aug 08 Python
python如何求100以内的素数
May 27 Python
python如何快速生成时间戳
Jul 21 Python
Python 3.9的到来到底是意味着什么
Oct 14 Python
Python通过字典映射函数实现switch
Nov 06 Python
Python机器学习三大件之一numpy
May 10 Python
python 下划线的多种应用场景总结
May 12 Python
Python Sql数据库增删改查操作简单封装
Apr 18 #Python
python使用paramiko实现远程拷贝文件的方法
Apr 18 #Python
python UNIX_TIMESTAMP时间处理方法分析
Apr 18 #Python
python动态加载包的方法小结
Apr 18 #Python
python实现按行切分文本文件的方法
Apr 18 #Python
Python获取linux主机ip的简单实现方法
Apr 18 #Python
Python实现递归遍历文件夹并删除文件
Apr 18 #Python
You might like
PHP提取字符串中的图片地址[正则表达式]
2011/11/12 PHP
跟着JQuery API学Jquery 之三 筛选
2010/04/09 Javascript
firefox下frameset取不到值的解决方法
2010/09/06 Javascript
javascript tips提示框组件实现代码
2010/11/19 Javascript
js 获取屏幕各种宽高的方法(浏览器兼容)
2013/05/15 Javascript
js导入导出excel(实例代码)
2013/11/25 Javascript
通过Jquery的Ajax方法读取将table转换为Json
2014/05/31 Javascript
在Node.js中实现文件复制的方法和实例
2014/06/05 Javascript
原生的html元素选择器类似jquery选择器
2014/10/15 Javascript
JS动态加载当前时间的方法
2015/02/09 Javascript
jQuery幻灯片带缩略图轮播效果代码分享
2015/08/17 Javascript
JavaScript原生xmlHttp与jquery的ajax方法json数据格式实例
2015/12/04 Javascript
Javascript类型转换的规则实例解析
2016/02/23 Javascript
浅析JavaScript中break、continue和return的区别
2016/11/30 Javascript
javascript的惯性运动实现代码实例
2019/09/07 Javascript
解决node终端下运行js文件不支持ES6语法
2020/04/04 Javascript
[03:15]DOTA2-DPC中国联赛1月22日Recap集锦
2021/03/11 DOTA
Python复数属性和方法运算操作示例
2017/07/21 Python
Python排序算法实例代码
2017/08/10 Python
利用python3随机生成中文字符的实现方法
2017/11/24 Python
基于DataFrame筛选数据与loc的用法详解
2018/05/18 Python
django formset实现数据表的批量操作的示例代码
2019/12/06 Python
python加载自定义词典实例
2019/12/06 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
浅谈anaconda python 版本对应关系
2020/10/07 Python
python time.strptime格式化实例详解
2021/02/03 Python
Html5基于canvas实现电子签名并生成PDF文档
2020/12/07 HTML / CSS
英国高街品牌:Miss Selfridge(塞尔弗里奇小姐)
2016/09/21 全球购物
快时尚眼镜品牌,全国连锁眼镜店:LOHO眼镜生活
2018/10/08 全球购物
上海某公司.net方向笔试题
2014/09/14 面试题
文明学生事迹材料
2014/01/29 职场文书
《翻越远方的大山》教学反思
2014/04/13 职场文书
乡镇党的群众路线教育实践活动剖析材料
2014/10/09 职场文书
2014年行政后勤工作总结
2014/12/06 职场文书
医药公司采购员岗位职责
2015/04/03 职场文书
解决Vmware虚拟机安装centos8报错“Section %Packages Does Not End With %End. Pane Is Dead”
2022/06/01 Servers