Edge浏览器驱动selenium自动化操作

一、前言

        室友的家长喜欢收集纪念币,纪念币是需要预约的,而且每个人同一种货币只能预约一份,如果想要给很多人预约,恐怕要一个一个点,因此,我突然回想起曾经接触过的一个知识——selenium,曾经的回忆涌上心头。

二、材料准备

1、电脑一台(带有pycharm软件)

2、Edge浏览器驱动(对应自己的浏览器版本)

3、验证码识别工具

4、屏幕前的吴彦祖一位

三、材料说明

1、Edge浏览器驱动

驱动下载地址:Microsoft Edge WebDriver | Microsoft Edge Developer
根据自己电脑的操作系统版本或浏览器版本选择对应的驱动版本。

下载完成后,将浏览器驱动放在你的Python当前工程根目录下

2、验证码识别工具

众所周知,有些网站在输入完账号信息后需要输入验证码才可以登录,这个验证码识别工具就可以解决这个问题,我使用的是http://ttshitu.com/这家的工具,需要花好像是1元钱可以识别1000次,用起来很不错,购买后,进入这家的用户文档http://www.ttshitu.com/docs/index.html?spm=null找到自己使用的语言,怎样使用人家都会说明清楚。

四、软件代码

这里我演示用的是https://www.gushiwen.cn/古诗文网

import time
import base64
import json
import requests
from selenium import webdriver
from selenium.webdriver.common.by import By
li = 0
email_list = ['1233211232@qq.com', "1111111111@qq.com", "1234567891@qq.com", "9876543219@qq.com"] # 邮箱库(假的)
code_list = [123456,654321,777777,555555] # 密码库(假的)


def base64_api(uname, pwd, img, typeid):
    with open(img, 'rb') as f:
        base64_data = base64.b64encode(f.read())
        b64 = base64_data.decode()
    data = {"username": uname, "password": pwd, "typeid": typeid, "image": b64}
    result = json.loads(requests.post("http://api.ttshitu.com/predict", json=data).text)
    if result['success']:
        return result["data"]["result"]
    else:
        return result["message"]
    return ""
def send_web():
    option = webdriver.EdgeOptions()
    option.add_experimental_option("detach", True) # 防止浏览器自己关闭
    global driver # 声明为全局
    driver = webdriver.Edge(options=option)# 防止浏览器自己关闭
    driver.get('https://so.gushiwen.cn/user/login.aspx?from=http://so.gushiwen.cn/user/collect.aspx') # 登录页面网站

def write():
    for li in range(len(email_list)):
        send_web() # 对登录页面发起请求
        time.sleep(2)
        email = driver.find_element(By.XPATH, '//*[@id="email"]')
        email.send_keys(email_list[li]) # 填入邮箱账号
        time.sleep(2)
        pwd = driver.find_element(By.XPATH, '//*[@id="pwd"]')
        pwd.send_keys(code_list[li]) # 填入密码
        time.sleep(2)
        code = driver.find_element(By.XPATH, '//*[@id="imgCode"]').screenshot('code.png') # 截取目标验证码图片到项目根目录
        img_path = "D:/Pycharm_Project/pythonProject_selenium/code.png" # 截取的验证码地址(这里填自己的,这个是我的)(不要有中文路径)
        result = base64_api(uname='填自己的', pwd='填自己的', img=img_path, typeid=3) # typeid是验证码格式,目标验证码格式根据所需填写(这里是英数组合)
        code = driver.find_element(By.XPATH, '//*[@id="code"]')
        code.send_keys(result) # 填入验证码
        time.sleep(2)
        li += 1 # 填写下一个人的
        driver.quit() # 关闭浏览器

if __name__ == "__main__":
    write()

(1)这里身份信息库和密码库根据自己实际情况填写

(2)用户名(uname)和密码(pwd)填自己在图片识别官网上注册的

(3)这里我在填写完验证码后两秒后直接关闭浏览器了,没有写登录的点击代码,因为只是示范作用,所以不要认为是BUG啊。

(4)用户账户密码库自行处置,我所提供的都是假的

(5)selenium库我用的是4.15.2版本

(6)思路给大家介绍到这里。

五、总结

selenium最常见是的谷歌浏览器的使用,但是也有很多人和我一样对Edge浏览器情有独钟,但是往上有关的selenium相关的介绍要么就是年代久远,要么就是少的可怜,当时最让我头疼的就是使用selenium打开浏览器浏览器会自动关闭,最终花了一下午才解决问题,写下此文,用以重新唤醒未来的我。

  • 14
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Selenium Edge浏览器驱动Selenium库中用于控制Microsoft Edge浏览器驱动程序。它允许自动化测试工具使用Selenium API控制Edge浏览器。要使用Selenium Edge驱动,需要先安装Microsoft Edge浏览器,然后下载并安装Selenium Edge驱动程序。 ### 回答2: selenium是一个流行的自动化测试工具,可以用于测试Web应用程序的功能和行为。selenium支持多种浏览器,其中包括edge浏览器。然而,为了能够使用seleniumedge浏览器上进行测试,需要先安装并配置edge浏览器驱动。 要在edge浏览器上使用selenium,需要先下载适用于edge浏览器驱动程序,该驱动程序允许seleniumedge浏览器进行通信并进行自动化测试。可以从selenium官方网站或edge浏览器网站下载相应的驱动程序。需要将该驱动程序添加到系统路径中,并使用selenium WebDriver API通过驱动程序与edge浏览器进行通信。 在使用seleniumedge浏览器进行自动化测试时,需要注意一些技巧。例如在测试开始之前,需要先启动edge浏览器,并打开测试网站。需要通过selenium WebDriver API使用诸如“get”和“find_element_by_xxx”之类的方法,来模拟用户与Web页面的交互。在测试过程中,还需要考虑一些缺陷和限制,例如edge浏览器的不稳定性或页面元素加载延迟等。 总之,selenium edge浏览器驱动是一个非常有用的工具,可以大大简化Web应用程序的自动化测试过程。然而,要确保正确安装和配置edge浏览器驱动程序,并充分了解selenium WebDriver API的使用规则和技巧,才能更好地利用这一工具,提高Web应用程序的质量和稳定性。 ### 回答3: selenium edge浏览器驱动是指为了让selenium自动化测试能够兼容微软的新一代浏览器Microsoft Edge而开发的一种工具。selenium是一种自动化测试工具,它可以模拟真实用户的行为,自动化执行网页的交互式操作,多用于Web应用测试、自动化测试等领域。 随着微软Edge浏览器在市场取得越来越大的份额,为了让selenium能够支持Edge浏览器进行自动化测试,官方推出了selenium edge浏览器驱动,即Microsoft WebDriver。该驱动程序能够与selenium的各种版本配合使用,用于操作和控制Edge浏览器,实现自动化测试和调试。 selenium edge浏览器驱动的使用步骤如下: 1.下载Microsoft WebDriver 下载对应Edge浏览器版本的Microsoft WebDriver(https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/),将它所在的文件夹添加到系统环境变量中,以便于后续的操作。 2.语言绑定 选择对应的语言绑定,比如Java、Python、C#等,并下载对应的WebDriver库和相关API,将其引入到测试项目中。 3.启动Edge浏览器 使用selenium编写测试脚本,启动Edge浏览器,访问待测试的网站,并执行相应的测试用例。 使用selenium edge浏览器驱动还需要注意以下几点: 1.驱动程序和浏览器的版本必须匹配,否则无法启动浏览器。 2.确保系统中已正确安装了Edge浏览器,并更新了最新版本。 3.根据测试需求,选择合适的浏览器模式,比如隐身或者普通模式。 综上所述,selenium edge浏览器驱动是用于与Edge浏览器进行自动化测试和调试的一种工具,在选择使用前,需要进行相应的配置和准备工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值