selenium的web自动化实战

selenium自动化原理:css

1.经过各类语言(python,java,ruby等)调用接口库html

2.经过浏览器驱动(web driver)来驱动浏览器java

 

利用Python自动化的环境安装:python

1.python解释器与pycharm集成开发环境的安装---安装过程web

2.客户端库的安装:打开cmd,输入:pip install seleniumchrome

3.安装浏览器与浏览器驱动(驱动下载至那里都行)windows

谷歌浏览器驱动下载地址:http://chromedriver.storage.googleapis.com/index.htmlapi

选择相应的系统,windows64位也可选win32.zip浏览器

 

 

自动化中的对象:ruby

Webdriver实例对象(浏览器驱动对象-控制浏览器)

WebElement实例对象(浏览器元素对象)

 

python + selenium自动化实例:

实现前程无忧搜索深圳的测试工程师岗位,并抓取到控制台中:

#导入seleniumfrom selenium import webdriver#导入谷歌浏览器驱动赋值为driver driver = webdriver.Chrome(r'H:\Pycharm\chromedriver.exe')#让驱动暂停10s,防止页面渲染未完成没法获取数据 driver.implicitly_wait(10)#经过驱动的get方法打开前程无忧官网 driver.get('http://www.51job.com')#经过id找到输入框并设置其内容为测试工程师 driver.find_element_by_id("kwdselectid").send_keys('测试工程师')#经过id找到城市选择的按钮并点击 driver.find_element_by_id("work_position_input").click() #获取热门城市中每个城市的em标签 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: filelds = job.find_elements_by_tag_name('span') strField = [fileld.text for fileld in filelds] print (' | '.join(strField)) driver.quit() 
相关文章
相关标签/搜索