• selenium-51job自动化测试(css选择器选择元素)


    登录 51job ,
    http://www.51job.com

    输入搜索关键词 "python", 地区选择 "杭州"(注意,如果所在地已经选中其他地区,要去掉),
    搜索最新发布的职位, 抓取页面信息。 得到如下的格式化信息

    Python开发工程师 | 杭州纳帕科技有限公司 | 杭州 | 0.8-1.6万/月 | 04-27
    Python高级开发工程师 | 中浙信科技咨询有限公司 | 杭州 | 1-1.5万/月 | 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_id('kwdselectid').send_keys('python')
    driver.find_element_by_id('work_position_input').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('.ush button').click()

    # 搜索结果分析
    jobs = driver.find_elements_by_css_selector('#resultList div.el')

    for job in jobs:
    # 去掉第一行:标题行
    if 'title' in job.get_attribute('class'):
    continue

    filelds = job.find_elements_by_tag_name('span')
    strField = [fileld.text for fileld in filelds]
    print (' | '.join(strField))


    driver.quit()
    
    
  • 相关阅读:
    人与人之间的距离
    Web API之service worker
    css背景图等比例缩放,盒子随背景图等比例缩放
    js节流函数高级版
    vue实现百度搜索下拉提示功能
    vue实现图片点击放大
    css图片宽高相等设置
    sublime常用插件及配置
    css揭秘读书笔记
    webpack2.0简单配置教程
  • 原文地址:https://www.cnblogs.com/iamshasha/p/11106376.html
Copyright © 2020-2023  润新知