python爬取boss直聘招聘信息_Python笔记-爬取Boss直聘的招聘信息
2018-05-09笔记:
最近迷上了爬虫,爬取招聘信息,存在MongoDB上
代码思路和上一篇爬取酷狗TOP500差不多,但是在使用CSS选择器的时候,有两组信息是连在一起,所以使用正则来获取
本来使用串行爬取完美,后来学着用多进程,直接封了IP,郁闷。明天学IP池在玩,贴上完整代码
要玩多进程,先搞IP池
import re #正则模块
import time #时间模块
import requests #请求网页
from bs4 import BeautifulSoup #解析网页
from pymongo import MongoClient #MongoDB数据库
from multiprocessing import Pool #多进程
headers = {
'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101 Firefox/60.0'
} #请求头
client = MongoClient() # 连接MongoDB
song = client.My_db.zhaopin # 在数据库中新建类
def get_zhaopin(url):
'''爬取BOSS直聘网,数据岗位'''
res = requests.get(url, headers=headers) #请求网页
soup = BeautifulSoup(res.text, 'lxml') #解析网页
#使用CSS选择器,获取数据
titles = soup.select('.job-title') #工作岗位 list
companys = soup.select('.company-text > h3 > a') #公司名称 list
reds = soup.select('.red') #工资月薪 list
infos = soup.select('.info-primary > p') #获取工作地点,要求经验和学历 list
company_infos = soup.select('.company-text > p') #获取公司类型,投资,人数 list
#循环获取的list
for title, company, red, info, company_info in zip(titles, companys, reds, infos, company_infos):
#使用正则获取info和company里面的信息
re_info = re.findall('
(.*) (.*)(.*)
', str(info))
re_company = re.findall('
(.*)(.*)(.*)
', str(company_info))
#将数据存放在data中
try:
data = {
'工作岗位': title.text.strip(),
'公司名称': company.text.strip(),
'工资': red.text.strip(),
'工作地点': re_info[0][0],
'工作经历': re_info[0][1],
'学历要求': re_info[0][2],
'公司类型': re_company[0][0],
'公司投资': re_company[0][1],
'公司人数': re_company[0][2]
}
except:
continue
song_id = song.insert(data) #将data添加到数据库中
print(song_id)
print('-'*50)
if __name__ == '__main__':
urls = ['https://www.zhipin.com/c100010000/h_100010000/?query=%E6%95%B0%E6%8D%AE&page={}'.format(str(i)) for i in range(1,51)] #网页
pool = Pool(processes=4) #设置4线程
pool.map(get_zhaopin,urls)
python爬取boss直聘招聘信息_Python笔记-爬取Boss直聘的招聘信息相关推荐
- python读取配置文件获取所有键值对_python笔记14-读取yaml配置文件(pyyaml)
yaml简介 1.yaml [ˈjæməl]: Yet Another Markup Language :另一种标记语言.yaml 是专门用来写配置文件的语言,非常简洁和强大,之前用ini也能写配置文 ...
- python爬取微信好友信息_python itchat 爬取微信好友信息
「itchat」一个开源的微信个人接口,今天我们就用itchat爬取微信好友信息,无图言虚空 三张图分别是「微信好友头像拼接图」.「性别统计图」.「个性签名统计图」 「微信好友头像拼接图」 「性别统计 ...
- python 百度搜索结果 浏览器 和终端不一致_python自动爬取百度搜索结果
python版本:3.8 pip install BeautifulSoup4 pip install selenium pip install requests from selenium impo ...
- python爬去智联招聘网_Python爬虫爬取智联招聘(进阶版)
点击上方"程序人生",选择"置顶公众号" 第一时间关注程序猿(媛)身边的故事 图片:Westworld Season 2 作者 王强 简介 Python追随者, ...
- python爬取酒店信息_python selenium爬取去哪儿网的酒店信息(详细步骤及代码实现)...
准备工作 1.pip install selenium 2.配置浏览器驱动.配置其环境变量 Selenium3.x调用浏览器必须有一个webdriver驱动文件 Chrome驱动文件下载chromed ...
- python爬虫抓取信息_python爬虫爬取网上药品信息并且存入数据库
我最近在学习python爬虫,然后正好碰上数据库课设,我就选了一个连锁药店的,所以就把网上的药品信息爬取了下来. 1,首先分析网页 2,我想要的是评论数比较多的,毕竟好东西大概是买的人多才好.然后你会 ...
- python查询高校信息_Python 3爬取全国高校基本信息-Go语言中文社区
最近接了一个单子,是爬取全国高校的基本信息,高校名字,高校层次,高校地区,招生办电话,招生办官网~ 镇楼图如下: 开发环境:python3.6(最新3.7也可以的) +pycharm 第三放库:req ...
- python爬取豆瓣电影信息_Python|简单爬取豆瓣网电影信息
前言: 在掌握一些基础的爬虫知识后,就可以尝试做一些简单的爬虫来练一练手.今天要做的是利用xpath库来进行简单的数据的爬取.我们爬取的目标是电影的名字.导演和演员的信息.评分和url地址. 准备环境 ...
- python写爬虫4-多线程爬虫(采集58出租房信息)_python爬虫 爬取58同城上所有城市的租房信息详解...
代码如下 from fake_useragent import UserAgent from lxml import etree import requests, os import time, re ...
最新文章
- python2的input,关于python2.x input函数的安全隐患
- 重做实验七 寻址方式在结构化数据访问中的应用
- JavaScrip入门-变量计算%函数
- vscode emmet默认模板_从零开始配置 vscode
- 新海诚没有参与制作的作品_新海诚简介和所有作品列表
- 一个项目部署多个节点会导致锁失效么_一文看透 Redis 分布式锁进化史(解读 + 缺陷分析)...
- Keli μVision中 STR指令写入内存无效
- Burp Suite —— 验证码识别、切换IP
- 苏宁小店启动“三公里灯塔”计划 用服务造极社区生活圈
- Qt系列文章之 Model/View 框架
- 微信小程序和app测试重点总结
- 用java下载apk解析包出错_教大家解析包时出现问题怎么解决
- 汉字字库存储芯片扩展实验——Logisim
- 安装jieba库的解决办法及简单使用
- C# winform 学习(一)
- 【Basic Algebra】群论学习整理
- 2021-2027全球与中国户外建筑用大理石市场现状及未来发展趋势
- java API学习记录
- 【转】PC机安装MAC虚拟机
- 电脑服务器 定时开关机 远程开关机(windows+linux)