• python实例编写(1)--浏览器操作,元素操作


    一.浏览器操作

    1.  back()与 forward()

    #coding=gbk  //编码不一定是utf-8 
    from selenium import webdriver         //导入包,也叫”模组“
    
    driver=webdriver.Firefox()              //同selenium一致,默认内嵌FF,其他浏览器需导入驱动
    /** 其他浏览器需要将驱动exe放到python安装包下
    driver=webdriver.Ie()  
    driver=webdriver.Chrome()    **/
    
    
    #访问百度
    
    no1_url="http://www.baidu.com"
    print "跳到百度:%s"%(no1_url)                
    driver.get(no1_url)
    
    #访问百度新闻
    
    no2_url="http://news.baidu.com"
    print "跳到百度新闻:%s"%(no2_url)
    driver.get(no2_url)
    
    #返回到百度
    
    print "跳到百度"
    driver.back()
    
    #前进到百度新闻
    
    print"跳到新闻"
    driver.forward()
    
    driver.quit()

    2.maximize_window()  最大化窗口

    #coding=utf-8
    from selenium import webdriver
    driver=webdriver.Firefox()
    driver.get("http://www.baidu.com")
    
    print "浏览器最大化"
    driver.maximize_window() #将浏览器最大化
    driver.quit()
    

    3.  set_window_size()设置浏览器大小

    #coding=utf-8
    from selenium import webdriver
    driver=webdriver.Firefox()
    driver.get("https://qy.weixin.qq.com/cgi-bin/home?lang=zh_CN&token=715149260#contacts")
    
    print "设置浏览器为移动端大小"
    driver.set_window_size(480,800) #设置浏览器为移动端大小
    driver.quit()
    

     二.元素操作

    1.简单对象的定位

    • find_element_by_id()
    • find_element_by_name()
    • find_element_by_classname()
    • find_element_by_tag_name()
    • find_element_by_link_text()
    • find_element_by_partial_link_text()
    • find_element_by_xpath()
    • find_element_by_css_selector()

    特别是xpath使用相对路径定位(使用相邻的有id的进行间接定位):

    2.登录实例 login.py   (获取元素属性)

    #coding=gbk
    from selenium import webdriver
    
    #登录163邮箱
    
    driver=webdriver.Firefox()
    driver.get("http://mail.163.com/")
    
    driver.find_element_by_id("idInput").clear()
    driver.find_element_by_id("idInput").send_keys("wyybingo")
    driver.find_element_by_id("pwdInput").clear()
    driver.find_element_by_id("pwdInput").send_keys("********")
    
    
    print driver.find_element_by_id("idInput").size                          //获取尺寸
    print driver.find_element_by_id("pwdInput").text                          //获取文本
    print driver.find_element_by_id("pwdInput").get_attribute("class")    //获取属性值
    print driver.find_element_by_id("remAutoLoginTxt").is_displayed()    //元素是否可见
    
    
    #type类型为submit,可以替代click, submit强调对整个信息的提交,点击强调对单个事件的独立性
    driver.find_element_by_id("loginBtn").submit() 
    driver.quit()

      执行结果如下:

    3.验证(打印信息判断用例是否成功),通常通过 url,title和标识性信息

    #coding=utf-8
    from selenium import webdriver
    
    #登录163邮箱
    
    driver=webdriver.Firefox()
    driver.get("http://mail.163.com/")
    
    driver.find_element_by_id("idInput").clear()
    driver.find_element_by_id("idInput").send_keys("wyybingo")
    driver.find_element_by_id("pwdInput").clear()
    driver.find_element_by_id("pwdInput").send_keys("*****")
    
    #type类型为submit,可以替代click
    driver.find_element_by_id("loginBtn").submit()
    
    
    print driver.get_current_url      //打印路径
    print driver.title                        //打印标题
    print driver.find_element_by_id("spnUid").text  //打印标头
    
    
    driver.quit()
    

    结果如下:


    >>> ================================ RESTART ================================
    >>>
    http://mail.163.com/js6/main.jsp?sid=ZDlqYvPPnHvHRTURunPPpYpWbwaaZWHT&df=mail163_letter#module=welcome.WelcomeModule%7C%7B%7D
    网易邮箱6.0版
    wyybingo@163.com
    >>>

    这里特别注意:这里的方法都不带()。。。。

     错误描述:

     Python错误:TypeError: 'str' object is not callable

    原因分析:

     当一般内部函数被用作变量名后可能出现此错误。。

    4.等待时间设置  

    sleep():time包中(必须休眠这么久)

    import time                                     time.sleep()    

    或    from time  import  sleep                    sleep()

    implicitly_wait():   (在设置事件内智能等待)

    
    
    
  • 相关阅读:
    修改windows系统cookie、favorites、desktop等的位置到非系统盘
    第三章 多维随机变量及其分布4
    谈谈Ironpython的应用
    提问的智慧
    第三章 多维随机变量及其分布2
    用C#做 UG NX 二次开发 / NX Secondary Dev. with C#
    第六章 样本与抽样分布
    ufun视频教程(合) / Movie of UFUN
    第四章 随机变量的数字特征2
    第一章 概率论的基本概论
  • 原文地址:https://www.cnblogs.com/alwayswyy/p/5013799.html
Copyright © 2020-2023  润新知