Configuration and catalog management utilities for archive repositories.
config/
├── __init__.py
├── catalog.py # 目录索引生成器
├── get_md5_list.py # MD5 校验列表生成
├── hierarchy/ # 层级结构检测
│ ├── __init__.py
│ └── detect_entry.py
├── repo/ # 仓库配置管理
│ ├── __init__.py
│ ├── add_to_config.py
│ └── keywords.py
└── visitor.py # 访问统计处理
递归扫描目录结构,生成 catalog.yml 索引文件。
功能:
- 扫描指定深度内的所有
config.yml文件 - 提取目录名称和描述
- 生成统一的目录索引
使用方法:
python -m config.catalog --max-depth 2输出: .github/catalog.yml
示例输出:
学术文献:
name: 学术文献
description: 此目录包含关于跨性别议题的学术文献...
文学作品:
name: 文学作品
description: 小说、散文等文学创作...生成文件的 MD5 校验列表,用于完整性检查。
自动检测目录的层级结构入口点。
将新文件添加到 config.yml 中。
关键词管理和提取。
处理 Google Analytics 访问数据。
功能:
- 从 data-analysis 仓库获取 GA 数据
- 归一化页面路径
- 生成访问量映射
数据来源:
https://raw.githubusercontent.com/project-polymorph/data-analysis/main/ga_visitor/google_analysis.csv
使用方法:
from config.visitor import load_ga_data
path_map = load_ga_data()
# 返回: {normalized_path: views}每个目录下的配置文件,描述该目录的内容:
name: '目录名称'
description: '目录描述'
curator: '维护者'
source: '来源'
tags:
- 标签1
- 标签2
license: '许可证'
files:
- name: '文件名'
filename: 'file.pdf'
type: 'document'
format: 'pdf'
size: 1024
md5: 'abc123...'
page: 'file_page.md'
subdirs:
- 子目录1
- 子目录2目录结构
↓
[catalog.py] 扫描 config.yml
↓
生成 catalog.yml 索引
↓
[visitor.py] 添加访问统计
↓
[page/gen_page.py] 生成页面
- pyyaml
- pandas (for visitor.py)
- requests