IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> python+selenium| 党旗飘飘 -> 正文阅读

[Python知识库]python+selenium| 党旗飘飘

D 旗飘飘初衷甚好
二十小时营养够料
点击确认你人没跑
频繁弹窗怕你溜号
发展对象一脸苦笑
只想快快拉进度条


提示:
1.ios端可以熄屏直拉进度条
2.参考H5 video 标签视频播放进度跳转,一行代码就可实现视频跳转
3.然而楼主这两条都没想到,用了最蠢的办法,只能实现流畅播放出现弹窗自动点击


python代码

import threading
import multiprocessing
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium import webdriver
from selenium.webdriver import ChromeOptions, ActionChains
import time

xpaths = [
    "/html/body/div/div[2]/div[2]/div[2]/div/div[3]/div/div[2]/div[2]/a"
]

button_xpath = "//*[@id='wrapper']/div/button"
i_know_xpath = "/html/body/div[5]/div[3]/a"
i_know_finish_xpath = "//div[@class='public_cont public_cont1']"
i_know_finish_text_xpath = i_know_finish_xpath + "/div[2]/p[1]"
form_begining_xpath = "/html/body/div[4]/div[3]/a[1]"
catagorys_xpath = "/html/body/div[1]/div[2]/div[4]/ul"
loc = ("xpath", "//*[@class='public_submit']")

def pachong(user,pwd,url):
    url2 = url + "/user/lesson"
    option = ChromeOptions()
    option.add_argument("headless")
    # 全程静音播放
    driver = webdriver.Chrome()
    driver.implicitly_wait(10)
    driver.get(url)
    time.sleep(1)
    driver.find_element_by_xpath("//*[@id='app']/div/div[2]/div[3]/div/div[1]/input").send_keys(user)
    driver.find_element_by_xpath("//*[@id='app']/div/div[2]/div[3]/div/div[2]/input").send_keys(pwd)
    driver.implicitly_wait(10)
    time.sleep(10)
    for xpath in xpaths: # 循环结束时记得回到 我的课程
        driver.get(url2)
        time.sleep(1)
        driver.implicitly_wait(10)
        driver.find_element_by_xpath(xpath).click()
        time.sleep(1)
        index = 0
        lis = driver.find_element_by_xpath("//div[@class='video_lists']/ul").find_elements_by_tag_name('li')
        for object in lis:
            index = index + 1
            object_xpath = "//div[@class='video_lists']/ul" + "/li[" + str(index) + " ]/a"
            element = driver.find_element_by_xpath(object_xpath)
            driver.execute_script("arguments[0].click();", element)
            video = driver.find_element_by_tag_name('video')
            try:
                # 处理弹窗
                while( 1 ):
                    try:
                         print(driver.find_element_by_xpath(i_know_finish_text_xpath).text)
                    except:
                        print("找不到对象")
                        break
                    if( driver.find_element_by_xpath(i_know_finish_text_xpath).text == "当前视频播放完毕!"):
                        i_know(driver)
                        break
                    i_know(driver)
                    driver.execute_script("return arguments[0].play()", video)
                    WebDriverWait(driver, 1000, 5).until(EC.presence_of_element_located(loc))
            except:
                print("无弹窗")
            # 打印信息掌握进度
            print(time.strftime("%Y-%m-%d-%H_%M_%S", time.localtime()))
            print(object)


def i_know(driver):
    loc = ("xpath","//a[@class='public_submit']")
    try:
        e = WebDriverWait(driver,10,0.5).until(EC.presence_of_element_located(loc))
        e.click()
        print("确认弹窗")
    except:
        print("没有弹窗")


if __name__ == '__main__':
    user = "用户名"
    pwd = "密码"
    url = "学校党旗飘飘首页链接"
    pachong(user,pwd,url)

不关心代码的话,只要把下面图里的user、pwd改成自己的,url改成学校发你们的链接!
请添加图片描述
再把“我的课程”里每个视频的xpath放到xpath这个数组里就好,长这样
请添加图片描述

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-12-13 12:46:15  更:2021-12-13 12:48:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 4:20:02-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码