zoukankan      html  css  js  c++  java
  • Pycharm+Selenium webdriverPython自动化测试

    这是关于软件测试的一个作业!

    1.Pycharm下载,这里可以自己去官网下载即可:https://www.jetbrains.com/pycharm/download/#section=windows,具体下载流程较为简单(这里推荐百度,比我说的详细)。

    2.Selenium安装,这里采用简单的办法:打开cmd,输入python –m pip install selenium .

     还有第二种方法,直接去官网下载:https://pypi.python.org/pypi/selenium,根据自己电脑下载对应的位数。

    3.安装浏览器驱动,这里我采用的火狐,反正大致方法是一样的:这里还是在:https://pypi.python.org/pypi/selenium下载,

     4.测试是否安装成功,输入以下代码:

    # encoding = utf-8
    from selenium import webdriver
    driver= webdriver.Firefox()
    driver.get("http://www.baidu.com")

    当然,如果你安装selenium成功后,最容易报错的就是“找不到geckodriver”这里我们刚刚下载了

     然后将其解压到:然后即可运行。

    5.第一个demo运行结果如下:

     6.相关操作(这里我直接给出所有代码,较为简单):

    # -*- coding: utf-8 -*-
    from selenium import webdriver
    import time
    driver=webdriver.Firefox()
    driver.get("https://www.baidu.com/")
    time.sleep(5)#定时操作
    driver.refresh()#刷新页面
    driver.get("http://www.4399.com")
    time.sleep(5)
    driver.refresh()
    driver.back()#返回上一页
    time.sleep(3)
    driver.forward()#切回下一页

    这里运行后,先进入百度,然后刷新,然后再进入4399,然后再刷新,然后返回百度,然后再进入4399.大家可以自行运行代码。

    #coding:utf-8
    from selenium import webdriver
    import time
    driver=webdriver.Firefox()
    driver.get("https://www.baidu.com/")
    time.sleep(3)
    #设置窗口大小为手机分辨率540*960
    driver.set_window_size(540,960)
    time.sleep(2)
    #将浏览器窗口最大化
    driver.maximize_window()
     

    这里进入百度,然后将屏幕设置为:540*960,然后再恢复。

    from selenium import webdriver
    from time import sleep
    
    driver = webdriver.Firefox()
    driver.get("http://www.baidu.com")
    
    driver.find_element_by_id('kw').send_keys('selenium')
    driver.find_element_by_id('su').click()
    sleep(5)
    
    # 截取当前窗口,并指定截图图片的保存位置
    driver.get_screenshot_as_file("login_success.png")
    sleep(5)
    
    #退出关闭浏览器
    driver.quit()

    这里进入百度,然后输入在输入框输入selenium,然后点击查询,出现结果后,截取当前页面。

    我这里只给出部分操作。具体更多操作,大家可以自行百度。

    自动化爬取b站数据:

    from selenium import webdriver
    from selenium.webdriver.support.wait import WebDriverWait # 用于实例化一个Driver的显式等待
    from selenium.webdriver.common.by import By # 内置定位器策略集
    from selenium.webdriver.support import expected_conditions as EC # 内置预期条件函数,具体API请参考此小节后API链接
    
    driver = webdriver.Firefox()
    driver.get('https://www.bilibili.com/v/game/esports/?spm_id_from=333.334.primary_menu.35#/9222')
    try:
        WebDriverWait(driver, 20, 0.5).until(EC.presence_of_all_elements_located((By.CLASS_NAME,'vd-list'))) #使用expected_conditions自带验证函数
        for doctorName in driver.find_elements_by_css_selector('.vd-list li'):
            print(doctorName.find_element_by_css_selector('.r > a').text)
    finally:
        driver.close() # close the driver

    结果如下:

  • 相关阅读:
    卷积神经网络
    舍弃—Dropout
    池化—Pooling
    Python基础知识点——简单 函数
    同事将excel数据转化为pdf,提前下班了,而我还在苦逼地做表
    怎么才能隐藏的IP?打造超强IP池项目,让你自己都忘记原本的IP
    Python爬取抖音视频(没有水印的哟)
    Python可视化:matplotlib 制作雷达图进行对比分析
    用于GIS(地理信息系统)和三维可视化制图的Python库
    关于如何在文件中调用命令窗口执行代码(以python为例)
  • 原文地址:https://www.cnblogs.com/lh9527/p/9527-14.html
Copyright © 2011-2022 走看看