from DrissionPage import ChromiumOptions, SessionOptions, WebPage import time import datetime import subprocess
do = ChromiumOptions(ini_path=r'/Users/weijiajin/PycharmProjects/DBRD/dp_configs.ini') so = SessionOptions(ini_path=r'/Users/weijiajin/PycharmProjects/DBRD/dp_configs.ini')
def execute_webpage(url, i):
page = WebPage(driver_or_options=do, session_or_options=so)
applescript = ''' tell application "System Events" to keystroke "m" using command down ''' subprocess.call(['osascript', '-e', applescript])
page.get('https://xzjnrc.px.chaoxing.com/portal/login') page.wait.load_start() time.sleep(1) page.ele('t:a@tx():手机号登录').click() page.wait.load_start() time.sleep(1)
page.ele('#phoneName').input('输入手机号') page.ele('#phonepassword').input('输入密码') page.ele('t:button@tx():登录').click() page.wait.load_start() time.sleep(1)
page.ele('#first134672').click() page.wait.load_start() time.sleep(1)
page.ele('t:a@tx():进入学习').click() page.wait.load_start() time.sleep(1)
page.get('https://xzjnrc.px.chaoxing.com/studentspace/projectPlan/projectPlanListUI?classId=65221fa9794bf8240c8cd89d') page.wait.load_start() time.sleep(1)
page.get(url) page.wait.load_start() time.sleep(5) page.ele('.vjs-big-play-button').click() page.wait.load_start() time.sleep(5) print() print(str(datetime.datetime.now())+': 开始播放第'+str(i)+'视频')
print('播放时长:'+page.ele('.vjs-duration-display').text)
hours = "0" minutes = "0" seconds = "0" if len(page.ele('.vjs-duration-display').text.split(":")) == 3: hours, minutes, seconds = page.ele('.vjs-duration-display').text.split(':') else: minutes, seconds = page.ele('.vjs-duration-display').text.split(':')
total_seconds = (int(hours) * 3600 + int(minutes) * 60 + int(seconds) + 10)/2 print("开启二倍速,剩余时间为:", total_seconds) page.ele('t:span@tx():2x').click() time.sleep(400) print(str(datetime.datetime.now())+': 第' + str(i) + '视频播放结束') page.quit() return page
with open('urls.txt', 'r') as file: urls = file.readlines()
i = 1 for url in urls: execute_webpage(url.strip(), i) time.sleep(5) i = i + 1
|