Loading

selenium模块

前言

环境:python3.9 + selenium4.26.1

Selenium 是一个用于自动化 Web 浏览器操作的强大工具,广泛应用于 Web 应用程序测试、网页数据抓取和任务自动化等场景。

用前准备

下载selenium模块

pip install selenium

下载浏览器对应驱动

找到自己的chrom版本

image

下载对应chrom驱动

选择下载stable,我的就是这个如图

image

将解压后chromedriver.exe的添加到chrome安装目录。

image

测试

以下代码复制粘贴即可

from selenium import webdriver
import time

# 加载驱动
driver = webdriver.Chrome()

# 访问百度
driver.get("https://baidu.com/")
time.sleep(3)  # 因为访问后会自动退出,设置3秒停留时间

简单示例

打开浏览器,搜索python

from selenium import webdriver
from selenium.webdriver.common.by import By
import time

# 加载驱动
driver = webdriver.Chrome()

# 访问百度
driver.get("https://baidu.com/")

# 获取百度输入框
search_input = driver.find_element(By.ID, 'kw')
# 输入python
search_input.send_keys("python")
# 获取“搜索”按钮
search_button = driver.find_element(By.ID, 'su')
# 点击跳转
search_button.click()


time.sleep(10)  # 因为访问后会自动退出,设置10秒停留时间

智慧树刷课脚本【待完成】

from selenium import webdriver
from selenium.webdriver.common.by import By
import time

# 一、进入智慧树并登录

# 加载驱动
driver = webdriver.Chrome()
# 访问智慧树,进入主页面
driver.get("https://www.zhihuishu.com/")

time.sleep(3)

# 获取登录按钮
login_button = driver.find_element(By.XPATH, '/html/body/div[1]/div[2]/div[1]/div/ul/li[5]/a')
# 点击登录,进入登录页面
login_button.click()

time.sleep(3)

# 获取手机号和密码的input,获取登录按钮
mobile_input = driver.find_element(By.XPATH, '/html/body/div[8]/div/form/div[1]/ul[1]/li[1]/input[4]')
pwd_input = driver.find_element(By.XPATH, '/html/body/div[8]/div/form/div[1]/ul[1]/li[2]/input')
submit_button = driver.find_element(By.XPATH, '/html/body/div[8]/div/form/div[1]/span')
# 输入手机号,密码
mobile_input.send_keys("手机号")
pwd_input.send_keys("密码2024-11-26 09:38:29 星期二")
submit_button.click()

# 会有一个滑动待写,留10秒时间,先手动滑一下
time.sleep(10)

# 二、观看课程

# 获取课程元素并点击
my_class = driver.find_element(By.XPATH, '/html/body/div[1]/section/div[2]/section[2]/section/div/div/div/div[2]/div[1]/div[2]/ul/div/dl/dd/div/img')
my_class.click()

time.sleep(50)

# 有个弹窗,取消一下
cancel_alter = driver.find_element(By.XPATH, '/html/body/div[1]/div/div[6]/div[2]/div[1]/i')  # 报错待处理
my_class.click()

time.sleep(10)

# 保持窗口
while True:
    time.sleep(1)
    print("结束")

智慧树脚本链接:https://blog.csdn.net/Runfreeone/article/details/136062153

posted @ 2024-11-23 23:09  一只大学生  阅读(4)  评论(0编辑  收藏  举报