|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 不二如是 于 2023-7-4 14:40 编辑
原本下载文件时要打开浏览器,再打开一系列网页,太麻烦了。所以就做了这个,无需打开浏览器即可下载
所需库:requests,tkinter
为了展示程序如何使用,在此提供几个提取码:
- 4nwnrp
- 8zq57z
- x5w5ypq
- 93gn9r
复制代码
源代码(课余时间写的,比较简陋,主要是为了练习爬虫的使用)
- from requests import *
- from tkinter import *
- from tkinter.filedialog import *
- from tkinter.messagebox import *
- sts=[]
- def find_site(string):
- ans=[]
- for i in range(len(string)-6):
- if string[i]=='a':
- if string[i+1]==' ':
- if string[i+2]=='h':
- if string[i+3]=='r':
- if string[i+4]=='e':
- if string[i+5]=='f':
- ans.append(i)
- return ans
-
- agent={'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'}
- def download():
- html=get('https://www.fuulea.com/class/task/download/?pin='+entry.get(),headers={'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'}).text
- sts=find_site(html)
- if len(sts):showtext.set(' 共有 '+str(len(sts))+' 个文件')
- else:showtext.set(' 没有文件')
- for st in sts:
- for en in range(8,500):
- if html[st+en]=='"':
- site=html[st+8:st+en]
- break;
- filename='114514'
- for i in range(st+en,st+8,-1):
- if html[i]=='/':
- filename=html[i+1:st+en]
- print(filename)
- break;
-
- file=asksaveasfile(initialfile=filename)
- if file==None:continue
- else:file.detach().write(get(site,headers={'User-Agent':'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/52.0.2743.116 Safari/537.36'}).content)
- window=Tk()
- window.title('fuulea downloader 2.2.34')
- window.geometry('320x100')
- showtext=StringVar()
- showtext.set(' 没有文件')
- tqm=Label(window,text='请输入提取码:')
- tqm.grid(column=0,row=0)
- entry=Entry(window,width=15)
- entry.grid(column=0,row=1)
- btn=Button(window,text=' 下载 ',command=download)
- btn.grid(column=0,row=2)
- show=Label(window,textvariable=showtext)
- show.grid(column=1,row=1)
- window.mainloop()
复制代码 |
评分
-
查看全部评分
|