semvec/pypi-packages huggingface dataset:
nodepad 0.2.0
Generate node group documentation from Blender files

# databpy


[![codecov](https://codecov.io/gh/BradyAJohnston/nodepad/graph/badge.svg?token=KFuu67hzAz)](https://codecov.io/gh/BradyAJohnston/nodepad)
![PyPI - Version](https://img.shields.io/pypi/v/nodepad.png) ![Tests
Workflow](https://github.com/bradyajohnston/nodepad/actions/workflows/tests.yml/badge.svg)
![CD
Workflow](https://github.com/bradyajohnston/nodepad/actions/workflows/ci-cd.yml/badge.svg)

Early stages at the moment, currently used for generating and building
docs for [Molecular
Nodes](https://bradyajohnston.github.io/MolecularNodes)

https://github.com/user-attachments/assets/5e5411df-a5e8-42e1-bd44-8f87cfbe9584

## Installation

Available on PyPI, install with pip:

``` bash
pip install nodepad
```

> [!CAUTION]
>
> `bpy` (Blender as a python module) is listed as an optional
> dependency, so that if you install `nodepad` inside of Blender you
> won’t install a redundant version of `bpy`. If you are using this
> outside of Blender, you will need to specifically request `bpy` with
> any of these methods:
>
> ``` bash
> # install wtih bpy dependency
> pip install 'nodepad[bpy]'
>
> # install both packages
> pip install nodepad bpy
>
> # install with all optional dependencies
> pip install 'nodepad[all]'
> ```

## `Documenter` class

Generates documentation for a `bpy.types.GeometryNodeTree`. The
`.as_markdown()` returns a markdown formatted string for a table for
inputs and outputs, as well as title and description.

``` python
import nodepad
import bpy
nodepad.utils.append_default_asset_node('Blend Hair Curves')
tree = bpy.data.node_groups['Blend Hair Curves']
tree.description = "This node group blends hair curves together"
doc = nodepad.Documenter(tree)
print(doc.as_markdown())
```


    ## Blend Hair Curves

    This node group blends hair curves together


    ### Outputs

    |Description|Socket               |
    |-----------|--------------------:|
    |           |`Geometry::Geometry` |

    : {tbl-colwidths="[90, 10]"}

    ### Inputs

    |Socket                 |Default|Description                                    |
    |-----------------------|:-----:|-----------------------------------------------|
    |`Geometry::Geometry`   |_None_ |Input Geometry (may include other than curves) |
    |`Factor::Float`        |1.0    |Factor to blend overall effect                 |
    |`Blend Radius::Float`  |0.05   |Radius to select neighbors for blending        |
    |`Blend Neighbors::Int` |10     |Amount of neighbors used for blending          |
    |`Preserve Length::Bool`|False  |Preserve each curve's length during deformation|

    : {tbl-colwidths="[10, 15, 80]"}
mcp-mysql 0.1.1
MCP MySQL Server
Requires Python: >=3.10

# 项目说明

本项目为 MCP MySQL Server，提供数据库知识和数据查询能力。

- 主逻辑文件：`mcp_mysql/server.py`
- 示例知识文件：`knowledge.txt`
- 测试用例：`tests/test_server.py`

## 安装依赖
```cmd
pip install pymysql
```

## 运行方式

### 方法1：使用Python模块方式（推荐）
```bash
python -m mcp_mysql
```

### 方法2：使用安装后的命令
```bash
mcp-mysql
```

### 方法3：直接运行server.py
```bash
python mcp_mysql/server.py
```

## 服务配置（Server config）

服务通过环境变量进行数据库连接配置（仅环境变量）。

| 环境变量 | 说明 | 默认值 |
|----------|------|--------|
| DB_USER  | 数据库用户名 | readonly_user |
| DB_PASS  | 数据库密码   | readonly_pass |
| DB_HOST  | 数据库主机   | localhost |
| DB_PORT  | 数据库端口   | 3306 |
| DB_NAME  | 数据库名称   | mcp |

示例：
```cmd
set DB_USER=readonly_user
set DB_PASS=readonly_pass

set DB_HOST=127.0.0.1
set DB_PORT=3306
set DB_NAME=mcp
python -m mcp_mysql
```
table-file-parer 0.1.3
load table files and parse them into parquet or pyarrow  format
Requires Python: >=3.12

# 代码结构说明

## ReadAndSplit_Chunk.py

设定读取文件的路径，输出路径，输出格式（非必要），分块大小

```
FormParser类
convert_to_output_format 转换输出
```

```
def processing_single_file(input_file_path : str, output_dir_path : str, output_format : str, max_size : int) -> list[dict]

入参：转换文件所在文件夹路径，文件输出路径, 文件输出格式（可选，默认parquet）, 分块大小（可选，默认1gb）
出参：sciendb标准化info
```

## ./huggingface

### my_huggingface_descriptive_statistics

根据parquet文件生成统计描述文件

```
DescriptiveStatisticsGenerator
generate_and_save_json（）
```



## ./utils

### my_pandas_type_confirming_utils

字符串类型数据推断

```
MyPandasTypeConfirmingUtils
```

### Invaild_Chars

文件名/路径名非法字符过滤

### split_file_name_format_checker

创建duckdb索引遵循：大文件分块后只处理part00，其余跳过；不分块直接创建duckdb索引
此工具用于识别哪些文件需要创建duckdb索引

```
FormatChecker.check_index_generate_format()
```

###  header_detector.py

检测csv等文件表头列名工具类

### csv_chunk_read_util

分块读取csv工具类，用于大文件读取并分块



## ./dataLoader

### base_file_loader.py

文件读取基类，包含```read_and_convert```读取转换抽象方法，需要子类实现

```
get_invalid_chars # 获取文件命名非法字符
_split_dataframe_by_size # df分割
```

### file_loader_factory

文件读取类的工厂类，根据传入需要读取的类型生成对应的数据loader

### excel_loader

excel类型读取转换逻辑

### hdf5_loader

hdf5类型文件读取转换

### single_table_loader

```
'.csv', '.sav', '.tsv', '.ods', '.parquet', '.tab' 类型转换
```



## ./dataWriter

### base_writer_utils

基础输出写文件类

包含通用方法

```
_analyze_all_schemas # 分析分块schema
auto_convert_column # 更安全的类型转换逻辑
clean_dataframe # 清洗dataframe
write_dataframe_in_chunks # 分块写入文件
save_as_output_format_with_chunks #输出
```

### parquet_writer.py

parquet输出

### pyarrow_writer.py

pyarrow输出



## ./despatch

## ./duckDBUtils

### my_parquet_fts_indexer_upgrade

读取parquet文件，识别字符串数据类型数据，并创建duckdb全文索引，输出duckdb文件
```
DuckDBFTSIndexer.create_fts_index()
```
每个duckdb中数据表名称固定为： data
生成的全文索引名称固定为：fts_main_data

# 统计文件statics.json类型
```
    "class_label",
    "float",
    "int",  
    "string_label",
    "string_text",
    "bool",
    "list",
    "datetime",
    "unknown"
```



# 文本类文件转Markdown

## ProcessText2MD.py

直接调用

process_text_file(input_file_path, output_path)

即可，目前支持的文件类型:

```
pdf
pptx
ppt
docx
doc
html
epub
```

使用的marker需要安装的依赖:

```
conda install weasyprint -c conda-forge
conda install Pango -c conda-forge
conda install fontTools -c conda-forge
conda install -c conda-forge fontconfig
conda install -c conda-forge pillow
conda install -c conda-forge freetype libpng
conda install transformers -c conda-forge
conda install tensorflow -c conda-forge
# 核心依赖
pip install marker-pdf[full]

```