Skip to main content

一个实现简易,使用简易的源管理器

Project description

Tennga

一个简单的源管理器

用法:

from tennga import tennga
tennga.init() #在文件夹下初始化源srcf
tennga.listsrc() #打印所有源
tennga.add(url) #添加源
tennga.remove(url或者数字) #移除list出来的源
tennga.update() #更新与使用源 下载所有源文件到srcs下面
tennga.search(文件名和模糊搜索) #从srcs的源中查找文件
tennga.donwload(文件名,d回调函数=None) #从源搜索并下载文件,携带一个aop。自动将文件下载到srcf/内容1中。
#注意即使删除了源,srcf下的文件不会被自动移除

d回调函数

def callback(req :requests,param :dict) -> object:
    """
    用于处理下载的半成品源,默认是直接保存content。
    如果下载失败,则检查是否有离线文件。如果有就将就着,没有就报错。
    req: requests对象
    param: 源文件对应的所有参数,比如name,url以及其他
    """
    pass

源格式 utf-8 json

{
    "内容1":[
        {"name":"文件1",
         "url":["http://www.baidu.com",
                "block://块名1/文件名"
               ]
         "xpath":"xxxxx",
         "time" : "2022/10/26"
        },
        ....
    ],
    "内容2":[
        
    ],
    "blocks":[
        {
            "name":"块名1",
            "url":"xxx",
        }
    ]
}

除了blocks以外,其他文件的源只有name和url是必须的。

文件存储在:

srcf/内容1/文件1/文件内容.txt

blocks是一个特殊的文件夹,用于存储block。实际上是tar文件。存储了一组数据。通常用于存储一组图片。blocks配置是固定不变的,只有name与url。为了使资源唯一,最好给块名加上一个id。使用block链接可以从block中解压出需要的资源放入对应文件夹下。

block的文件后缀为xx.bk。直接存储于block下面。

blocks文件夹也在srcf下面。

block文件

以tar归档的文件。不能包含文件夹,是多个文件被裸归档的。

block链接:block://block名/文件名.扩展名

其中,程序会先从blocks目录中查找block块,如果没有,会尝试从源中下载对应block。然后再从block中获取文件。通常用于应对过于散碎的批量文件,比如一个源中全是图片。

block是固定的。也就是说同名block只能上传一次。下次如果要更改请制作新的block。因为程序会主动检查是否存在对应block。如果压缩错了重新修改上传了,也不会被重新下载。因此建议如果修改,请使用新的block。

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tennga-1.1.2-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

Details for the file tennga-1.1.2-py3-none-any.whl.

File metadata

  • Download URL: tennga-1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 5.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.7

File hashes

Hashes for tennga-1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c69e776c3d21287e1cc24c7577a9dfa2e7e113ceba8fe1990a8d23f370c93c87
MD5 633a85f44c8de5ba0e30d5adc3233325
BLAKE2b-256 ee17761b4a0de3fecb3278c3700d33dd68c47b44006dd51736c7bdeed15a2319

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page