更新 下载小闲答题数据.py
This commit is contained in:
parent
e92845f92e
commit
1de1d923ab
|
|
@ -1,4 +1,5 @@
|
||||||
from PySide6.QtWidgets import QWidget, QApplication, QFileDialog, QTableWidgetItem
|
from PySide6.QtWidgets import QWidget, QApplication, QFileDialog, QTableWidgetItem
|
||||||
|
from PySide6.QtGui import QColor
|
||||||
from Ui_下载小闲答题数据 import Ui_Form
|
from Ui_下载小闲答题数据 import Ui_Form
|
||||||
from selenium import webdriver
|
from selenium import webdriver
|
||||||
from selenium.webdriver.common.by import By
|
from selenium.webdriver.common.by import By
|
||||||
|
|
@ -155,9 +156,12 @@ def RenameRecentzip(folder,message): #将folder中最新的zip文件名加上(me
|
||||||
filelist.sort(key = lambda x:os.path.getmtime(os.path.join(folder,x)),reverse = True)
|
filelist.sort(key = lambda x:os.path.getmtime(os.path.join(folder,x)),reverse = True)
|
||||||
filepath = os.path.join(folder,filelist[0])
|
filepath = os.path.join(folder,filelist[0])
|
||||||
renamedfilepath = filepath[:-4]+f"({message}).zip"
|
renamedfilepath = filepath[:-4]+f"({message}).zip"
|
||||||
os.rename(filepath,renamedfilepath)
|
try:
|
||||||
print(f"已重命名为: {os.path.split(renamedfilepath)[-1]}")
|
os.rename(filepath,renamedfilepath)
|
||||||
|
print(f"已重命名为: {os.path.split(renamedfilepath)[-1]}")
|
||||||
|
except:
|
||||||
|
return 1
|
||||||
|
return 0
|
||||||
|
|
||||||
def DownloadZips(driver,alist=[]): #下载页面上的指定zip文件
|
def DownloadZips(driver,alist=[]): #下载页面上的指定zip文件
|
||||||
page_info = GetPageInfo(driver)
|
page_info = GetPageInfo(driver)
|
||||||
|
|
@ -283,8 +287,10 @@ class MyWindow(QWidget,Ui_Form):
|
||||||
self.homeworklist = GetValidHomeworks(self.driver,self.lineEdit_startdate.text(),self.lineEdit_enddate.text(),self.lineEdit_graderegex.text())
|
self.homeworklist = GetValidHomeworks(self.driver,self.lineEdit_startdate.text(),self.lineEdit_enddate.text(),self.lineEdit_graderegex.text())
|
||||||
for i in range(len(self.homeworklist)):
|
for i in range(len(self.homeworklist)):
|
||||||
self.tableWidget.insertRow(i)
|
self.tableWidget.insertRow(i)
|
||||||
self.tableWidget.setItem(i,0,QTableWidgetItem(self.homeworklist[i][0]))
|
self.tableWidget.setItem(i,0,QTableWidgetItem(f"{self.homeworklist[i][0]['name']} / {self.homeworklist[i][0]['grade']}"))
|
||||||
|
self.tableWidget.setItem(i,1,QTableWidgetItem(""))
|
||||||
def exec(self):
|
def exec(self):
|
||||||
|
i = 0
|
||||||
for hmwk,page in self.homeworklist:
|
for hmwk,page in self.homeworklist:
|
||||||
foundhmwk = False
|
foundhmwk = False
|
||||||
downloaded = False
|
downloaded = False
|
||||||
|
|
@ -302,12 +308,17 @@ class MyWindow(QWidget,Ui_Form):
|
||||||
print(f"正在下载 {hmwk['name']} 的 zip 文件")
|
print(f"正在下载 {hmwk['name']} 的 zip 文件")
|
||||||
try:
|
try:
|
||||||
message = DownloadZipwithDetail(self.driver,hmwkindex)
|
message = DownloadZipwithDetail(self.driver,hmwkindex)
|
||||||
RenameRecentzip(self.outputfolder,message)
|
renamed = RenameRecentzip(self.outputfolder,message)
|
||||||
downloaded = True
|
if renamed == 0:
|
||||||
|
downloaded = True
|
||||||
|
self.tableWidget.item(i,1).setBackground(QColor("green"))
|
||||||
|
QApplication.processEvents()
|
||||||
except:
|
except:
|
||||||
print(Exception)
|
print(Exception)
|
||||||
if not downloaded:
|
if not downloaded:
|
||||||
print(f"@@@@@@未能下载 {hmwk['name']}")
|
print(f"@@@@@@未能下载并改名 {hmwk['name']}")
|
||||||
|
self.tableWidget.item(i,1).setBackground(QColor("red"))
|
||||||
|
i += 1
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Reference in New Issue