网站公告
点击问题反馈。微信登陆的用户请及时在个人中心设置登陆密码,并且牢记自己的用户名。
头像上传问题点击此处

电子资源的查询和整理

热度 6 已有 348 次阅读 2020-12-28 00:23 个人分类:技术方法 系统分类:其他

电子资源下载超过4个T了,打开过的连1%也没有。立个Flag, 今年把电子资源整理好。

1. 电脑硬盘
A. 随时查询:用Everything, 查起来很快。
B. 下载所有电脑硬盘下文件的目录:Window键+R, 输入"cmd",回车
(1) 输入 Dir e:\ /s/b>e:\Filelist.xls, 将所有e盘内每个文件的目录,存入e盘内的文件filelist.xls中。
再加工一下,可以很容易得到一系列书的名称。缺点是到文件级别,信息太多。
(2) 输入 tree e:\ /f >e:\Fielist.xls,将所有e盘内每个文件夹的目录,存入e盘内的文件filelist.xls中。
方便先整体看看硬盘里有哪些内容。tree e:\10_英语\26_Early_Reading_Books /f >e:\filelist.xls, 进一步缩小范围到特定文件夹

2. 百度云盘
A. 随时查询:直接用云盘内的搜索
B. 云盘内所有文件目录 - 其实最想知道的是老王云盘的内容
Step 1: 安装Python. (参考https://www.liaoxuefeng.com/wiki/1016959663602400/1016959856222624)
Step 2: C盘内搜索BaiduYunCacheFileV0.db文件,拷贝到指定地点例如桌面备用
Step 3: 将以下内容拷贝到记事本(txt文件),存成文件名为filepath.py的文件后,双击文件运行就行了。
#!/usr/bin/env python3  
# -*- coding:utf-8 -*-  
  
from tkinter import *  
from tkinter.filedialog import askopenfilename  
from tkinter.filedialog import asksaveasfilename  
from tkinter.ttk import *  
import sqlite3  
  
def select_db_file():  
    db_file = askopenfilename(title="请选择BaiduYunCacheFileV0.db文件",filetypes=[('db', '*.db')])  
    db.set(db_file)  
  
def select_save_file():  
    save_file = asksaveasfilename(filetypes=[('文件', '*.txt')])  
    f.set(save_file+".txt")  
  
def write_file(file_dict,f,item,gap=""):  
    if item=="/":  
        f.write("━" + "/" + "\n")  
        for i in file_dict["/"]:  
            f.write("┣" + "━" + i + "\n")  
            i = item + i + "/"  
            if i in file_dict:  
                write_file(file_dict,f,i, gap="┣━")  
    else:  
        gap = "┃  " + gap  
        for i in file_dict[item]:  
            f.write(gap + i + "\n")  
            i = item + i + "/"  
            if i in file_dict:  
                  write_file(file_dict,f,i,gap)  
  
def create_baiduyun_filelist():  
    file_dict = {}  
    conn = sqlite3.connect(db.get())  
    cursor = conn.cursor()  
    cursor.execute("select * from cache_file")  
    while True:  
        value = cursor.fetchone()  
        if not value:  
            break  
        path = value[2]  
        name = value[3]  
        size = value[4]  
        isdir = value[6]  
        if path not in file_dict:  
            file_dict[path] = []  
            file_dict[path].append(name)  
        else:  
            file_dict[path].append(name)  
    with open(f.get(),"w",encoding='utf-8') as fp:  
        write_file(file_dict,fp,"/")  
  
root = Tk()  
root.title('百度云文件列表生成工具')  
db_select = Button(root, text=' 选择DB文件 ',command=select_db_file)  
db_select.grid(row=1,column=1,sticky=W,padx=(2,0),pady=(2,0))  
db = StringVar()  
db_path = Entry(root,width=80,textvariable = db)  
db_path['state'] = 'readonly'  
db_path.grid(row=1,column=2,padx=3,pady=3,sticky=W+E)  
save_path = Button(root, text='选择保存地址',command=select_save_file)  
save_path.grid(row=2,column=1,sticky=W,padx=(2,0),pady=(2,0))  
f = StringVar()  
file_path = Entry(root,width=80,textvariable = f)  
file_path['state'] = 'readonly'  
file_path.grid(row=2, column=2,padx=3,pady=3,sticky=W+E)  
create_btn = Button(root, text='生成文件列表',command=create_baiduyun_filelist)  
create_btn.grid(row=3,column=1,columnspan=2,pady=(0,2))  
root.columnconfigure(2, weight=1)  
root.mainloop() 

路过
3

鲜花

握手

雷人

刚表态过的朋友 (3 人)

作者的其他最新日志全部

facelist

您需要登录后才可以评论 登录 | 新会员加入

评论 (3 个评论) 发表评论

  • hidden 玄素真人

    2020-12-28 05:58

    学习了
       回复
  • hidden 静悠远

    2020-12-28 09:57

      
       回复
  • hidden kelly_wwhh

    2020-12-29 19:47

    老王的网盘,我也好奇有啥
       回复