DrissionRecord
用于记录数据的模块。
Decision gist · record as of 2026-08-14
Yes, if you need buffered, multi-threaded file writing with low overhead. The package is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and requires only one dependency. Install it for data collection or batch export workflows where I/O efficiency matters; skip it if you only write small amounts of data or use a database.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low install friction with a single runtime dependency (openpyxl).
- Package is actively maintained with a recent release.
License · maintenance · safety
MIT (permissive) — MIT license permits unrestricted use, modification, and distribution with only attribution required.
last release 2026-04-13 (123 days)
0 known vulnerabilities (OSV.dev, 2026-08-14) · 429,346 downloads/mo, #6,740 on PyPI
Alternatives
Verify before relying
from DrissionRecord import Recorder
r = Recorder('data.csv')
r.add_data([(1, 2, 3), (4, 5, 6)])
r.record()- Whether automatic data persistence on program crash/exit actually works as described
- Performance characteristics when writing millions of records under concurrent load
- Whether xlsx cell formatting, images, and links are fully functional in version 2.0.1
What it is and what it does
DrissionRecord is a Python utility for buffering and writing data to multiple file formats—xlsx, csv, json, jsonl, sqlite, txt, and byte files. It solves the efficiency problem in data collection workflows by caching data in memory and writing it in batches rather than opening and closing files repeatedly. The core Recorder class accepts data via add_data() and flushes it to disk when a threshold is reached or when record() is called.
The package is designed for scenarios where frequent file I/O is a bottleneck or where data loss on crash is a risk. It supports multi-threaded writes, automatic header creation from dictionary data, coordinate-based cell writes for spreadsheets, and resumable workflows. A single runtime dependency (openpyxl) keeps the install footprint minimal.
Use it for
- Web scraping workflows where data must be saved incrementally to avoid loss on interruption
- Batch data export pipelines that need to write millions of records efficiently
- Multi-threaded data collection systems writing to a single shared output file
- Resumable data jobs using xlsx or csv files as checkpoints
- Converting or migrating data between json, csv, and xlsx formats in bulk
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need buffered, multi-threaded file writing with low overhead.
The package is actively maintained, has no known vulnerabilities, carries a permissive MIT license, and requires only one dependency. Install it for data collection or batch export workflows where I/O efficiency matters; skip it if you only write small amounts of data or use a database.
Install
drissionrecord on PyPI
Before you install
Low install friction with a single runtime dependency (openpyxl). Package is actively maintained with a recent release.
License in practice
MIT license permits unrestricted use, modification, and distribution with only attribution required.
Quickstart
from DrissionRecord import Recorder
r = Recorder('data.csv')
r.add_data([(1, 2, 3), (4, 5, 6)])
r.record()
Verify before relying
- Whether automatic data persistence on program crash/exit actually works as described
- Performance characteristics when writing millions of records under concurrent load
- Whether xlsx cell formatting, images, and links are fully functional in version 2.0.1
Package facts
| License | MIT permissive |
| Python support | Supports the current Python release >=3.6 |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packageopenpyxl |
| Maintenance | Actively maintained 123 days since the last release |
| First released | |
| Downloads | 429,346 / month, #6,740 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 3.6Topic :: Utilities |
Evidence: drissionrecord-2.0.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “data buffering and file writing”
- DrissionRecordBuffers and writes data to files (xlsx, csv, json, jsonl, sqlite,…
- streaming-form-dataParses multipart/form-data streams chunk-by-chunk without buffering…
- stream-zipConstructs ZIP archives on-the-fly without storing the entire file in…
Give your agent the search over MCP, or paste the wish link into any chat.
More Utilities packages
Converts domain names between Unicode and ASCII-compatible encoding (Punycode) according to IDNA 2008 and Unicode Technical Standard 46, with security validation and broader script coverage than the standard library.
Install it if you work with internationalized domain names, need to validate domains, or use HTTP clients that depend on it transitively.
Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.
Setuptools is a Python build backend and package management tool that handles building, distributing, and installing Python packages, including support for C/C++ extension modules.
Pluggy provides a plugin system that lets you define hook specifications and register implementations to be called in sequence, enabling extensible Python applications without tight coupling.
Install it if you're building an extensible application or framework.
Pygments is a syntax highlighter that colorizes source code and text in over 500 languages and formats, outputting to HTML, LaTeX, RTF, SVG, images, or ANSI terminal sequences.
Install it if you need to display or transform source code.
Six provides utility functions to write Python code that runs on both Python 2.7 and Python 3.3+, smoothing over language differences between the two versions.
See also DataRecorder · tabulator · DrissionGet · partd · atomicwrites · pyexcel-io · dataflows-tabulator · django-import-export · records · atomicwrites-homeassistant