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直聘的招聘信息相关推荐

  1. python读取配置文件获取所有键值对_python笔记14-读取yaml配置文件(pyyaml)

    yaml简介 1.yaml [ˈjæməl]: Yet Another Markup Language :另一种标记语言.yaml 是专门用来写配置文件的语言,非常简洁和强大,之前用ini也能写配置文 ...

  2. python爬取微信好友信息_python itchat 爬取微信好友信息

    「itchat」一个开源的微信个人接口,今天我们就用itchat爬取微信好友信息,无图言虚空 三张图分别是「微信好友头像拼接图」.「性别统计图」.「个性签名统计图」 「微信好友头像拼接图」 「性别统计 ...

  3. python 百度搜索结果 浏览器 和终端不一致_python自动爬取百度搜索结果

    python版本:3.8 pip install BeautifulSoup4 pip install selenium pip install requests from selenium impo ...

  4. python爬去智联招聘网_Python爬虫爬取智联招聘(进阶版)

    点击上方"程序人生",选择"置顶公众号" 第一时间关注程序猿(媛)身边的故事 图片:Westworld Season 2 作者 王强 简介 Python追随者, ...

  5. python爬取酒店信息_python selenium爬取去哪儿网的酒店信息(详细步骤及代码实现)...

    准备工作 1.pip install selenium 2.配置浏览器驱动.配置其环境变量 Selenium3.x调用浏览器必须有一个webdriver驱动文件 Chrome驱动文件下载chromed ...

  6. python爬虫抓取信息_python爬虫爬取网上药品信息并且存入数据库

    我最近在学习python爬虫,然后正好碰上数据库课设,我就选了一个连锁药店的,所以就把网上的药品信息爬取了下来. 1,首先分析网页 2,我想要的是评论数比较多的,毕竟好东西大概是买的人多才好.然后你会 ...

  7. python查询高校信息_Python 3爬取全国高校基本信息-Go语言中文社区

    最近接了一个单子,是爬取全国高校的基本信息,高校名字,高校层次,高校地区,招生办电话,招生办官网~ 镇楼图如下: 开发环境:python3.6(最新3.7也可以的) +pycharm 第三放库:req ...

  8. python爬取豆瓣电影信息_Python|简单爬取豆瓣网电影信息

    前言: 在掌握一些基础的爬虫知识后,就可以尝试做一些简单的爬虫来练一练手.今天要做的是利用xpath库来进行简单的数据的爬取.我们爬取的目标是电影的名字.导演和演员的信息.评分和url地址. 准备环境 ...

  9. python写爬虫4-多线程爬虫(采集58出租房信息)_python爬虫 爬取58同城上所有城市的租房信息详解...

    代码如下 from fake_useragent import UserAgent from lxml import etree import requests, os import time, re ...

最新文章

  1. python2的input,关于python2.x input函数的安全隐患
  2. 重做实验七 寻址方式在结构化数据访问中的应用
  3. JavaScrip入门-变量计算%函数
  4. vscode emmet默认模板_从零开始配置 vscode
  5. 新海诚没有参与制作的作品_新海诚简介和所有作品列表
  6. 一个项目部署多个节点会导致锁失效么_一文看透 Redis 分布式锁进化史(解读 + 缺陷分析)...
  7. Keli μVision中 STR指令写入内存无效
  8. Burp Suite —— 验证码识别、切换IP
  9. 苏宁小店启动“三公里灯塔”计划 用服务造极社区生活圈
  10. Qt系列文章之 Model/View 框架
  11. 微信小程序和app测试重点总结
  12. 用java下载apk解析包出错_教大家解析包时出现问题怎么解决
  13. 汉字字库存储芯片扩展实验——Logisim
  14. 安装jieba库的解决办法及简单使用
  15. C# winform 学习(一)
  16. 【Basic Algebra】群论学习整理
  17. 2021-2027全球与中国户外建筑用大理石市场现状及未来发展趋势
  18. java API学习记录
  19. 【转】PC机安装MAC虚拟机
  20. 电脑服务器 定时开关机 远程开关机(windows+linux)

热门文章

  1. 上次谁说要简历模板来着?来!
  2. 优先级队列(头条面试题)
  3. 北科大matlab,北科大matlab第五次作业多项式及其相关计算.doc
  4. set OpenCV_ROOT
  5. 检测跟踪分割网络笔记
  6. PyQt Qwidget笔记
  7. v2.matchTemplate图片尺寸问题
  8. torch 列最大值
  9. x264各个版本下载
  10. python计算相关系数