Selenium爬取拉钩python的职位信息

前言

针对AJAX异步加载的问题,Selenium真的是无往不利,你也不用管JS后台是怎么工作的,看到即可抓取,简单又暴力,暴力即美学。扯远了···想当初第一次做这种页面抓取的时候,也是用的Selenium

代码

#-*- coding:utf-8 -*-
from selenium import webdriver   #webdriver就是加载你的浏览器驱动,比如我使用的是谷歌,就是Chrome,记住一个小知识,当Chrome不好使的时候,你可以换个内核,往往问题是出现在这
from selenium.webdriver.common.by import By #这几个东西都是固定的,是智能等待所需要用到的1
from selenium.webdriver.support.ui import WebDriverWait #这几个东西都是固定的,是智能等待所需要用到的2
from selenium.webdriver.support import expected_conditions as EC #这几个东西都是固定的,是智能等待所需要用到的3
from lxml import etree   #叉path模块

def start_driver_request():
        lagou = driver.page_source  # 收集当前页信息
        parse(lagou)   #解析方法,传入信息
        try:
            WebDriverWait(driver, 3, 3).until(EC.presence_of_all_elements_located((By.XPATH, '//*[class="pager_next"]')))    #每当浏览器需要进行交互动作的时候,都必须进行智能等待,不信你取消掉这句试试
        finally:
            driver.find_element_by_css_selector('span[action="next"]').click()
            # windows = driver.current_window_handle  #
            # all_handles = driver.window_handles  #
            # for handle in all_handles:
            #     if handle != windows:
            #         driver.switch_to.window(handle)
            return start_driver_request()

def parse(response):
    soup1 = etree.HTML(response)
    item_job = soup1.xpath('//li/@data-positionname')
    item_company = soup1.xpath('//li/@data-company')
    item_salary = soup1.xpath('//li/@data-salary')
    return print(item_job,item_company,item_salary)

if __name__ == '__main__':
    url = 'https://www.lagou.com/jobs/list_?city=%E5%B9%BF%E5%B7%9E&cl=false&fromSearch=true&labelWords=&suginput='
    driver = webdriver.Chrome()
    driver.maximize_window()
    driver.get(url)
    try:
        WebDriverWait(driver, 3, 3).until(EC.presence_of_all_elements_located((By.XPATH, '//*[id="submit"]')))
    finally:
        driver.find_element_by_css_selector('input[id="keyword"]').send_keys("python")
        driver.find_element_by_css_selector('input[id="submit"]').click()
        start_driver_request()

运行结果

['客服专员(偏运营)', '行政助理(前台)', '用户增长运营', '.net程序员', '高级安卓开发工程师', '文案策划', '网络营销咨询师(SEO)', '费用税务会计助理', '客服专员', 'BD策划经理', '产品经理', '储备干部(仓储管理方向)', 'UI交互设计师', '运营实习生(BM001)', '金融销售专员 非保险(六险二金)'] ['广州咖客', '广州趣米网络', '作文纸条', '广州汉能', '无界互动', '安豆科技', 'Gridsum 国双', '有车以后', '晨风文化', '摘星者', '傲银科技', '丰海科技', '广州有信科技有限公司', '至真信息', '平安普惠'] ['3k-5k', '2k-4k', '15k-30k', '4k-7k', '13k-18k', '6k-12k', '5k-8k', '4k-6k', '4k-8k', '10k-15k', '15k-25k', '3k-5k', '9k-18k', '1k-2k', '6k-12k']
['Python开发工程师', 'python开发组长(架构方向)', 'python讲师', 'Python机器学习工程师', 'Python开发工程师', 'python开发', 'python开发工程师', 'python开发工程师', 'Python工程师', 'python开发', '量化平台测试工程师-python', 'Python高级开发工程师', 'python开发', 'Python应用工程师(业务系统方向)', 'Python讲师/助教'] ['网易', '省省回头车', '圆方圆学院', '佰锐科技', '泉涌信息', '掌昆游戏', '战神联盟', '深圳市星际互动娱乐科...', '广府数字', 'BBGAME', '经传多赢', 'AAM中国', '派客朴食', '逗号智能', '广州酷码教育咨询有限公司'] ['10k-20k', '15k-22k', '25k-50k', '12k-20k', '15k-30k', '10k-15k', '10k-18k', '10k-18k', '12k-18k', '10k-15k', '10k-13k', '15k-26k', '7k-14k', '10k-18k', '5k-8k']
['python开发工程师(业务方向)', 'PHP兼 Python 开发工程师', '数据开发工程师-Python【珠江新城】', 'python量化交易员', 'python开发工程师', 'python', 'python', 'python开发', 'Python开发工程师', 'python开发工程师', 'Python开发工程师', 'Python高级开发工程师', 'python开发工程师', 'python开发工程师', 'python开发'] ['省省回头车', '广府数字', '经传多赢', '分子资产', '广州游爱', '晋丰科技', '天地网通', '要出发', '乐顽科技', '稻禾科技', 'V大夫', '广东紫晶', '淘竹马网', '浩鲸科技', '广州连元'] ['8k-15k', '13k-18k', '10k-20k', '10k-20k', '7k-9k', '11k-12k', '9k-12k', '10k-18k', '8k-15k', '8k-15k', '10k-20k', '15k-30k', '6k-10k', '12k-18k', '8k-15k']
['Python开发工程师', 'Python工程师', 'Python开发工程师', 'Python开发工程师', 'python开发工程师', 'Python开发工程师', 'Python软件工程师', 'Python爬虫研发工程师', 'Python中级工程师', 'Python工程师', 'python工程师(人工智能方向)', 'python讲师', '初级Python开发工程师(平台开发)', 'Python web开发工程师', 'Python程序员学徒'] ['网易', '恒拓开源', '美亚商旅', '玄武科技', '嘉为科技', '爪挖科技', '英荔教育', '多益网络', '广州市云润大数据', '颉一软件', '云趣科技', '千锋互联', '星舆科技', '多多村', '创拓信息'] ['15k-25k', '10k-14k', '6k-12k', '10k-20k', '8k-10k', '8k-14k', '9k-15k', '9k-15k', '10k-15k', '15k-20k', '10k-20k', '20k-30k', '6k-12k', '15k-20k', '1k-2k']
['python服务端开发工程师', '中级Python开发工程师(平台开发)', 'Python后端开发工程师', 'Python程序员学徒', 'Python web开发工程师', 'Python web高级工程师', 'Java/Python算法工程师', 'django后端工程师', 'python游戏服务器开发工程师', 'Python web讲师', 'Python Web后端开发', 'python爬虫开发工程师', 'Python爬虫工程师', '小程序开发工程师', 'odoo开发工程师'] ['网易', '星舆科技', '肆狼游戏', '创拓信息', '菜鸟窝', '德利', '软博', '立云科技', '辉耀互娱', '传智播客广州分校', 'Herely 这里', '晋丰科技', 'Fordeal', '明朝互动', '蜂助手'] ['15k-30k', '12k-24k', '5k-10k', '2k-3k', '8k-15k', '12k-24k', '6k-8k', '8k-15k', '6k-12k', '20k-30k', '3k-5k', '10k-12k', '15k-30k', '8k-12k', '15k-20k']
['资深Python爬虫工程师', 'Python数据挖掘及人工智能机器学习讲师', '大数据开发工程师', '后台研发工程师', '软件开发工程师', '数据开发工程师', '后端开发工程师', '后端开发工程师', '后端开发工程师', '大数据开发工程师', '大数据开发工程师', '量化数据开发工程师', '资深容器平台开发工程师', '中级大数据开发工程师', '大数据开发工程师'] ['Fordeal', '传智播客广州分校', '一手服装批发APP', '广州市果肉教育科技有限公司', '合晟', '有车以后', 'AI考拉', '贝业思', '宇泰行', '君海游戏', '博智林机器人公司', '经传多赢', '滴普科技', '巴图鲁公司', '洋葱omall'] ['25k-50k', '20k-35k', '12k-16k', '10k-20k', '5k-8k', '12k-20k', '10k-18k', '9k-13k', '22k-35k', '10k-20k', '15k-30k', '10k-20k', '20k-40k', '11k-22k', '10k-15k']
['数据开发工程师', '大数据开发工程师', '大数据开发工程师', '游戏服务端开发工程师', '研发总监(技术方向)', 'BI开发工程师', '区块链开发工程师', '资深后端程序', '大数据开发工程师', 'BI开发工程师', '资深后端开发工程师', '技术支持工程师', 'golang开发工程师', '服务端开发工程师(gz)', '测试开发工程师'] ['AI考拉', '博智林机器人公司', '智蓝', '擎天柱', '航天精一', 'Fordeal', '链友科技', '芹菜科技', '机智云', '君海游戏', 'Mobvista', '大圣科技', '坏猴子网络', '金山办公软件', '亚美'] ['8k-12k', '25k-50k', '15k-25k', '10k-20k', '25k-35k', '20k-30k', '10k-20k', '15k-22k', '12k-22k', '10k-20k', '15k-30k', '10k-12k', '8k-15k', '15k-22k', '15k-25k']
['知识图谱研发工程师', '前端开发工程师', '前端工程师', '机器人自动化开发工程师(RPA)', '大数据开发工程师', '前端开发工程师', '前端开发工程师', 'Golang开发工程师', '运维开发工程师', '全栈高级工程师', '运维开发工程师', 'GO语言开发工程师', '高级前端工程师', 'BI/ETL开发工程师', '前端开发工程师'] ['博智林机器人公司', '阿里影业', '探迹科技', '富璟科技', '广州餐道', '广州市果肉教育科技有限公司', '优盟广告', '坏猴子网络', '魔幻科技', '大麦电商', '君海游戏', '武汉佰钧成技术有限公司', '奇化网', '奇异果科技', '合众财富'] ['20k-40k', '25k-40k', '15k-25k', '8k-15k', '10k-20k', '8k-16k', '10k-15k', '15k-30k', '10k-15k', '15k-25k', '7k-14k', '20k-30k', '15k-30k', '10k-15k', '12k-17k']
['自然语言处理开发工程师', '高级运维开发工程师', '高级测试工程师(偏测试开发)', 'C++开发工程师', 'PHP开发工程师', '中高级C++工程师', '高级U3D客户端开发工程师', '深度学习研发工程师', '运维开发工程师(薪资与能力成正比)', 'PHP开发工程师', 'php开发工程师', 'PHP开发工程师', 'C#开发工程师', '测试开发工程师', '高级PHP开发工程师'] ['博智林机器人公司', '经传多赢', '广州棒谷科技股份有限公司', '金十数据', '逗号智能', '广东东田教育集团有限公司', 'Goat Games', '多益网络', '乐至科技', '原力互娱', '广州天游', '妈妈网', '景心科技', '美的IoT', '爱员工'] ['20k-40k', '12k-20k', '8k-16k', '15k-30k', '12k-18k', '12k-20k', '18k-22k', '12k-20k', '13k-26k', '6k-10k', '7k-12k', '8k-15k', '12k-18k', '15k-20k', '18k-35k']
['php开发工程师', 'PHP高级开发工程师', '中高级PHP开发工程师', 'web前端开发工程师', 'Java工程师', 'PHP高级开发工程师', 'C++开发工程师', 'c++服务端开发工程师', '技术总监/CTO', '测试开发高级/资深工程师/专家', 'PHP开发工程师', '安卓开发工程师(手游)', 'PHP研发工程师', '网络虚拟化方向-软件开发工程师', '算法工程师'] ['Goat Games', '亚美', '卓游科技', '泉涌信息', '宇泰行', '伊智', '坏猴子网络', '原力互娱', '广州酷码教育咨询有限公司', '小鹏汽车', '绿瘦', '贪玩游戏', '翼课网', '虎牙信息', '蓝月亮'] ['10k-15k', '11k-17k', '15k-18k', '15k-30k', '10k-16k', '17k-25k', '13k-25k', '10k-20k', '20k-30k', '20k-40k', '12k-18k', '8k-16k', '12k-20k', '20k-40k', '15k-25k']
['初级c++开发', '前端', '前端开发工程师', '算法工程师', 'web前端开发工程师', '后台PHP开发工程师', '中级java工程师', '算法工程师', '算法工程师(AI)', '运维开发工程师', 'AI开发测试工程师', '后台工程师', '技术经理', 'GIS开发工程师(广州)', 'PHP高级开发工程师(后台系统)'] ['坏猴子网络', '文盛资产', '机智云', '灵机文化', '广电银通', '微咔世纪', '洋葱omall', '贝业思', '蓝月亮', '三七互娱', '北京云族佳科技', '探迹科技', '广府数字', 'Esri 中国', '鲸鱼集团'] ['10k-20k', '15k-24k', '8k-12k', '13k-20k', '10k-20k', '10k-16k', '10k-15k', '16k-24k', '25k-40k', '10k-15k', '10k-15k', '15k-30k', '25k-50k', '12k-18k', '12k-20k']
['JAVA开发工程师', '系统工程师(地点:天河华师地铁)', '高级前端', 'PHP后台开发工程师', '资深PHP开发工程师', '高级前端开发工程师', '安全高级/资深工程师/专家', '墨墨后端开发工程师 / 热爱技术,喜欢折腾', '高级PHP程序员', '算法工程师', '运维开发工程师(gz)', '风控测试开发工程师', '高级技术经理', 'Node.js 资深后端开发工程师', 'AI平台开发工程师'] ['洋葱omall', '蓝月亮', '文盛资产', '优提示', 'Fordeal', 'Mobvista', '小鹏汽车', '墨墨科技', '汉全科技', '众聚互娱', '金山办公软件', '合众财富', '广府数字', '芹菜科技', '图普科技(深度学习图像识别云)'] ['8k-15k', '10k-18k', '15k-24k', '8k-16k', '25k-50k', '10k-20k', '20k-40k', '15k-30k', '15k-20k', '20k-40k', '15k-25k', '11k-18k', '18k-35k', '20k-30k', '12k-24k']
['系统工程师(地点:天河华师地铁)', 'PHP后端开发工程师', 'PHP中级工程师', '高级软件系统工程师', '高级java开发工程师', '中级/高级PHP开发工程师', 'RPA开发工程师', '推荐系统高级/资深工程师/专家', '高级后台开发工程师', 'DBA工程师', 'Java工程师(大数据方向)', '算法工程师', '大数据开发工程师', '高级开发工程师 (内容抓取) (MJ001572)', '算法工程师(AI)'] ['蓝月亮', 'Fordeal', '伊智', 'Pony.ai', '蓝深科技', '海南济游网络科技有限公司', '恒利信息', '小鹏汽车', '字节跳动', '点购商城', '机智云', '广州思迈特', '网易', '欢聚时代(YY Inc)', '广州餐道'] ['10k-18k', '15k-30k', '10k-17k', '25k-50k', '10k-20k', '10k-15k', '12k-20k', '20k-40k', '25k-50k', '15k-25k', '10k-20k', '15k-25k', '15k-30k', '25k-50k', '15k-25k']
['高级算法工程师- 高精地图和定位', '嵌入式安全高级/资深工程师/专家', '大数据开发工程师', 'AI 容器云平台高级研发工程师-PaaS平台研发', '内容抓取高级研发工程师 (MJ001285)', '技术/产品支持工程师', '后台开发工程师', '小程序 开发 工程师', '高级SDN/NFV开发工程师', '算法工程师', '通信研发工程师', 'DevOps开发工程师', '后台开发工程师', '研发工程师', 'Docker开发工程师'] ['Pony.ai', '小鹏汽车', 'wlaike', '虎牙信息', '欢聚时代(YY Inc)', '北京瑞友', '字节跳动', '德客信息', '中国电信云计算公司', '朗新科技', 'SOUNK-LINK', '智蓝', '星汉科技', '广州英卓', '图普科技(深度学习图像识别云)'] ['25k-50k', '20k-40k', '25k-50k', '20k-40k', '20k-40k', '15k-25k', '20k-40k', '6k-10k', '18k-35k', '15k-20k', '10k-20k', '20k-25k', '15k-30k', '10k-15k', '15k-25k']
['AI 容器云平台高级研发工程师', '高级后台开发工程师', '云存储高级开发工程师', '脚本开发工程师', '云平台研发工程师', 'PaaS研发工程师', '开发工程师', '服务端开发工程师(阴阳师)', '大数据工程师', '高级交付工程师', '高级算法工程师', '实施工程师', '数据分析工程师', '推荐算法工程师', '高级算法工程师- 感知'] ['虎牙信息', '字节跳动', '中国电信云计算公司', '广州佰蜂', '联奕科技', '广州华胜企业管理服务有限公司', '三优亲子', '网易', '百布', '华云数据', '巴图鲁公司', '昊链科技', '广州六合信息科技股份有限公司', '探迹科技', 'Pony.ai 小马智行'] ['20k-40k', '25k-50k', '18k-35k', '6k-8k', '10k-20k', '15k-25k', '8k-15k', '20k-40k', '13k-26k', '15k-30k', '15k-30k', '5k-6k', '10k-15k', '10k-20k', '25k-50k']

小爬虫写起来是真的快,就是速度感人,这种阻塞式的小爬虫仅限于爬去数据较少的一些网站,到一些万级数据库里面扒数据,那就可能要考虑更多的东西了,不过我看了很多爬取项目,要涉及到爬虫效率的问题一般也是针对那些防爬措施不太强的网站,说到反反爬,我就想到开花,说到开花,那就是另外一个故事了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,123评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,031评论 2 384
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,723评论 0 345
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,357评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,412评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,760评论 1 289
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,904评论 3 405
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,672评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,118评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,456评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,599评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,264评论 4 328
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,857评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,731评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,956评论 1 264
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,286评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,465评论 2 348

推荐阅读更多精彩内容