• selenium-51job高级搜索


    登录 http://www.51job.com
    点击高级搜索
    输入搜索关键词 python
    地区选择 杭州
    职能类别 选 计算机软件 -> 高级软件工程师
    公司性质选 外资 欧美
    工作年限选 1-3 年

    搜索最新发布的职位, 抓取页面信息。 得到如下的格式化信息

    Python开发工程师 | 杭州纳帕科技有限公司 | 杭州 | 0.8-1.6万/月 | 04-27
    Python高级开发工程师 | 中浙信科技咨询有限公司 | 杭州 | 1-1.5万/月 | 04-27















    from selenium import webdriver
    driver = webdriver.Chrome(r"D:for myselfGoogleChromeApplicationchromedriver.exe")
    driver.implicitly_wait(10)
    driver.get('http://www.51job.com')
    #点击高级搜索
    driver.find_element_by_css_selector('.ush>a').click()#('a[href$='advance_search.php']')

    #输入关键词
    driver.find_element_by_id('kwdselectid').send_keys('python')

    #选择城市
    driver.find_element_by_id('work_position_click').click()
    import time
    time.sleep(6)
    #在城市中选择杭州
    '''driver.find_element_by_id('work_position_click_center_right_list_category_000000_080200').click()
    driver.find_element_by_id('work_position_click_bottom_save').click()
    #点击取消不是杭州的城市有难度!
    selectedCityEles = driver.find_elements_by_css_selector('#work_position_click_center em[class=on]')

    for one in selectedCityEles:
    one.click()
    #点击确定保存城市
    driver.find_element_by_id('work_position_click_bottom_save').click()'''
    cityEles = driver.find_elements_by_css_selector('#work_position_click_center_right_list_000000 em')
    for city in cityEles:
    cityName = city.text#打印城市名字
    selected = city.get_attribute('class')=='on'#判断
    if (cityName == '杭州'and not selected)or
    (cityName !='杭州' and selected):#城市名字是杭州没有被点击或者城市名字不是杭州被点击了
    city.click()
    # 保存城市选择
    driver.find_element_by_id('work_position_click_bottom_save').click()

    #选择职能类别有遮挡 需要点击一下其他地方这里选择点击高级搜索这个字体
    driver.find_element_by_css_selector('.tit').click()
    #在高级搜索点击职能类别
    driver.find_element_by_id('funtype_click').click()
    #在职能类别选择计算机软件及高级软件工程师并且确定
    driver.find_element_by_id("funtype_click_center_right_list_category_0100_0100").click()
    driver.find_element_by_id('funtype_click_center_right_list_sub_category_each_0100_0106').click()
    driver.find_element_by_id('funtype_click_bottom_save').click()
    #在高级搜索选择公司性质 外资
    driver.find_element_by_id('cottype_list').click()
    driver.find_element_by_css_selector('#cottype_list span.li[data-value="01"]').click()
    #工作年限1—3
    driver.find_element_by_id('workyear_list').click()
    driver.find_element_by_css_selector('#workyear_list span.li[data-value="02"]').click()
    #点击搜索
    driver.find_element_by_css_selector("span.p_but[onclick*='kwdGoSearch']").click()
    #搜索结果页面
    jobs = driver.find_elements_by_css_selector('#resultList div[class=el]')

    for job in jobs:
    fields = job.find_elements_by_tag_name('span')
    stringFilelds = [field.text for field in fields]
    print (' | '.join(stringFilelds))


    driver.quit()
  • 相关阅读:
    linux 进程等待 wait 、 waitpid
    数理逻辑量词的引入
    Android自己定义动态布局 — 多图片上传
    Dynamics CRM 2015/2016 Web API:Unbound Custom Action 和 Bound Custom Action
    iOS 9应用开发教程之显示编辑文本标签文本框
    iOS 9应用开发教程之ios9中实现按钮的响应
    iOS 9应用开发教程之使用代码添加按钮美化按钮
    iOS 9应用开发教程之ios9的视图
    iOS 9应用开发教程之定制应用程序图标以及真机测试
    iOS 9应用开发教程之编辑界面与编写代码
  • 原文地址:https://www.cnblogs.com/iamshasha/p/11112633.html
Copyright © 2020-2023  润新知