selenium

作者: chliar | 来源:发表于2018-04-16 16:05 被阅读0次
    from selenium import webdriver    
    from selenium.webdriver.common.keys import Keys    
    import time  
      
    driver = webdriver.PhantomJS(executable_path="G:\phantomjs-1.9.1-windows\phantomjs.exe")     
    #请求url
    driver.get("http://www.baidu.com/") 
     
    #在搜索框里填入搜索值
    driver.find_element_by_id("iptUsername").send_keys('百度')
    
    #获取这个标签的尺寸(例如用在图片上面): {'width': 500, 'height': 22} 
    size = driver.find_element_by_name("wd").size  
    print size  
     
     #获取标签的文本(xpath)
    news = driver.find_element_by_xpath("//div[@id='u1']/a[1]").text  
    print news  
    
    #获取css的值
    driver.find_element_by_css_selector("input.btn").value_of_css_property("input.btn")
    
    # 提交表单
    driver.find_element_by_id("form1").submit()
    
    #获取坐标  
    location = driver.find_element_by_xpath("//div[@id='u1']/a[3]").location  
    print location  
    #坐标: {'y': 19, 'x': 498}  
      
    #当前链接: https://www.baidu.com/  
    print driver.current_url  
    print driver.title  
    #标题: 百度一下, 你就知道  
      
    result =driver.find_element_by_id("su").is_displayed()  
    print result  
    #是否可见: True  
    # 获取部分元素源码:
    .get_attribute('innerHTML')
    
     #获取标签的元素属性值:.get_attribute('title')
    href = driver.find_element_by_xpath("//div[@id='u1']/a[2]").get_attribute('href')  
    name = driver.find_element_by_xpath("//div[@id='u1']/a[2]").get_attribute('name')  
    print href,name  
    
    # 根据text文本获取xpath语法
    self.driver.find_element_by_xpath('//*[text()="{}"]')
    
    运行js  
    driver.execute_script("getRecordInfo(975882,'2016')")
    
    清除cookie
    driver.delete_all_cookies()
    
    
    请求超时问题
    # driver.implicitly_wait(10)
    # driver.set_page_load_timeout(10)
    # driver.set_script_timeout(10)
    
    driver = webdriver.Chrome()
    driver.get(url)
    #浏览器最大化
    driver.maximize_window()
    #返回上一页
    driver.back()
    #关闭窗口
    driver.close()
    #退出
    driver.quit()
    #刷新
    driver.refresh() 
    #获取页面源码
    driver.page_source
    
    代理中也可添加最大化
    
    
    xpath模糊匹配
    # 匹配文字
    driver.find_element_by_xpath("//*[contains(text(), 'hao123')]").click()
    # 匹配属性
    driver.find_element_by_xpath("//*[contains(@id, 'kw')]").click()
    # 匹配以什么开头
    driver.find_element_by_xpath("//*[starts-with(@id, 's_kw_')]").click()
    # 匹配以什么结尾
    driver.find_element_by_xpath("//*[ends-with(@id, 'kw_wrap')]").click()
    

    相关文章

      网友评论

        本文标题:selenium

        本文链接:https://www.haomeiwen.com/subject/pxeekftx.html