• selenium的基本操作


    selenium的基本操作

    selenium的基本操作

    常用类与方法

    from selenium import webdriver   #驱动浏览器
    from selenium.webdriver import ActionChains  #鼠标相关操作
    from selenium.webdriver.common.by import By   #选择器,以什么方式选择标签元素
    from selenium.webdriver,common.keys import Keys #键盘相关
    from selenium.webdriver.support import expected_conditions as EC #各种判断,一般跟等待事件连用,比如说等待某个元素加载出来
    from selenium.webdriver.support.wait import WeDriverWait  #等待事件,可以与EC连用
    

    browser = webdriver.Chrome()
    wait = WebDriverWait(browser,10)
    browser.get("https://www.baidu.com") #利用谷歌浏览器打开百度窗口
    browser.maximize_window() #窗口最大化
    print(browser.current_url) #获取当前页url
    print(browser.title) #获取当前页面的title
    print(browser.name) #获取driver对象:chrome
    print(browser.current_window_handle) #获取当前页面窗口
    print(browser.get_cookies()) #获取cookies
    print(browser.page_source) #获取当前页面内容
    browser.refresh() #刷新
    browser.save_screenshot('a.png') #保存截图
    browser.close() #关闭当前窗口
    browser.quit() #退出浏览器驱动,关闭关联窗口

    选择器

    from selenium import webdriver    #驱动浏览器
    from selenium.webdriver.support.wait import WebDriverWait   #等待事件
    browser = webdriver.Chrome()     #选择为谷歌浏览器
    browser.find_element_by_id('su')    #id选择器
    browser.find_element_by_class_name('xx')   #类选择器,1个
    browser.find_elements_by_class_name('xx')   #类选择器,多个
    browser.find_element_by_link_text('xxx')    #连接文本选择器
    browser.find_element_by_xpath('xxxx')       #xpath选择器
    browser.find_element_by_tag_name('h1')    #标签选择器,获取1个
    browser.find_elements_by_tag_name('h1')     #标签选择器,获取多个
    browser.find_element_by_css_selector('xxx')  #样式选择器
    

    另外,上面的选择器,都可以写成下面的形式

    By.ID
    By.LINK_TEXT
    By.CLASS_NAME
    By.XPATH
    By.CSS_SELECTOR
    By.TAG_NAME
    

    通过选择器来实现

    import time
    from selenium import webdriver   #驱动浏览器
    from selenium.webdriver import ActionChains   #鼠标的相关操作,比如滑动验证
    from selenium.webdriver,common.keys import By   #选择器以什么方式选择标签元素
    from selenium.webdriver.common,keys import Keys    #键盘相关
    from selenium.webdriver.support import expect_conditions as EC  #各种判断等待时间连用,比如说等待某个元素加载出来
    from selenium.webdriver.support.wait import WeDriverWait   #等待事件
    

    browser = webdriver.Chrome()
    wait = WebDriverWait(browser,10)
    browser.get('https://www.baidu .com')

    input = browser.find_element_by_id('kw') #id选择器
    input.send_keys('张开嘴') #获取到input框就可以往里面填值了
    time.sleep(1)
    input.clear() #清空值
    submit = browser.find_element_(By.ID,'su')
    submit.click() #点击事件

    有时候点击事件会有问题,选择键盘处理

    submit.send_keys(Keys.ENTER)
    print(input.get_attribute('name')) # 获取name属性
    print(input.text) # 获取内容,但这里的input没有text
    print(input.tag_name)
    print(input.get_property('name')) # 获取给定属性,用法类似get_attribute
    print(browser.find_element_by_class_name('mnav').text) # 找个有text的

  • 相关阅读:
    python 列表 字典的操作补充
    RPC远程过程调用
    python-迭代器 生成器 可迭代对象
    Semaphore源码分析
    CyclicBarrier源码分析
    CountDownLatch源码分析
    ReentrantLock源码分析
    AQS源码分析
    Mac下使用Clion调试MySQL源码配置流程
    hooks版本的pureComponent
  • 原文地址:https://www.cnblogs.com/g15009428458/p/12169127.html
Copyright © 2020-2023  润新知