vobject
A full-featured Python package for parsing and creating iCalendar and vCard files
Decision gist · record as of 2026-08-14
Yes. vobject is a mature, actively maintained library with low install friction and no known vulnerabilities. If you need to parse or generate iCalendar or vCard files in Python, this is the standard choice. The permissive Apache license poses no restrictions. The only caveat is that hCalendar serialization is marked experimental, so verify that feature's stability if you plan to use it.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low install friction with three lightweight runtime dependencies (pytz, six, python-dateutil).
- Actively maintained with recent commits; last release was 606 days ago, indicating stable, mature code rather than rapid iteration.
License · maintenance · safety
Apache (permissive) — Apache permissive license allows commercial and private use with minimal restrictions; you can use, modify, and distribute this package freely as long as you include the license notice.
last release 2024-12-16 (606 days) · last repo commit 2026-08-14 · 54 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 1,730,737 downloads/mo, #3,609 on PyPI
Alternatives
Verify before relying
pip install vobject
import vobject
# Parse a vCard or iCalendar string
obj = vobject.readOne(ics_or_vcard_string)
print(obj.serialize())- Whether experimental hCalendar serialization is production-ready or carries known limitations
- Current Python 3 version support scope (classifiers list 'Python :: 3' but no minor versions specified)
What it is and what it does
vobject is a Python library for reading and writing iCalendar (.ics) and vCard (.vcs) files—the standard formats for calendar events and contact information. It parses these text-based formats into Python objects you can work with programmatically, and serializes Python data structures back into valid iCalendar or vCard strings. The library handles character encoding automatically and depends on pytz, six, and python-dateutil for timezone and date handling.
The package is marked Production/Stable and has been actively maintained since 2006. It's designed for developers who need to integrate calendar or contact data into Python applications—reading events from .ics files, building contact databases from vCard exports, or generating calendar feeds. The three runtime dependencies are all widely used and stable, keeping the install footprint small.
Use it for
- Parse .ics calendar files to extract events and convert them to Python objects for database storage or processing
- Read vCard contact files and transform them into application-specific contact data structures
- Generate iCalendar or vCard output from Python data to share calendar events or contacts with other systems
- Build calendar synchronization tools that need to read and write standard calendar formats
- Create contact management utilities that import/export vCard files with proper encoding handling
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes.
vobject is a mature, actively maintained library with low install friction and no known vulnerabilities. If you need to parse or generate iCalendar or vCard files in Python, this is the standard choice. The permissive Apache license poses no restrictions. The only caveat is that hCalendar serialization is marked experimental, so verify that feature's stability if you plan to use it.
Install
vobject on PyPI
Before you install
Low install friction with three lightweight runtime dependencies (pytz, six, python-dateutil). Actively maintained with recent commits; last release was 606 days ago, indicating stable, mature code rather than rapid iteration.
License in practice
Apache permissive license allows commercial and private use with minimal restrictions; you can use, modify, and distribute this package freely as long as you include the license notice.
Quickstart
pip install vobject
import vobject
# Parse a vCard or iCalendar string
obj = vobject.readOne(ics_or_vcard_string)
print(obj.serialize())
Verify before relying
- Whether experimental hCalendar serialization is production-ready or carries known limitations
- Current Python 3 version support scope (classifiers list 'Python :: 3' but no minor versions specified)
Package facts
| License | Apache permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 3 packagespytzsixpython-dateutil |
| Maintenance | Actively maintained 606 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,730,737 / month, #3,609 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 5 - Production/StableEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 2.7Programming Language :: Python :: 3Topic :: Text Processing |
Evidence: vobject-0.9.9-py2.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 › “vcard parsing library”
- vobjectParses and serializes iCalendar and vCard files, converting them to…
- types-vobjectProvides type stubs for the vobject package, enabling type checkers…
- pythonvCard4Parse and generate RFC 6350-compliant vCard 4.0 files, converting…
Give your agent the search over MCP, or paste the wish link into any chat.
More Text Processing packages
A drop-in replacement for Python's standard `re` module that adds advanced regex features like nested sets, fuzzy matching, lookaround in conditionals, and full Unicode case-folding while maintaining backward compatibility.
pyparsing provides a library for building text parsers directly in Python code using composable grammar classes, handling quoted strings, whitespace variation, and embedded comments without regex or lex/yacc.
Install it if you need to parse text or define grammars programmatically.
fonttools manipulates font files in multiple formats (TrueType, OpenType, AFM, Type 1, Mac-specific) and includes TTX, a tool to convert fonts to and from XML text format.
Install it if you need to read, write, or manipulate fonts programmatically or via the TTX command-line tool.
Docutils converts plaintext documentation in reStructuredText format into multiple output formats including HTML, XML, and LaTeX using a modular processing system.
RapidFuzz provides fast fuzzy string matching using Levenshtein Distance and related metrics, implemented mostly in C++ with Python bindings for rapid similarity scoring and approximate string matching.
Install it if you need fuzzy string matching; it's a solid replacement for FuzzyWuzzy with better licensing and performance.
tinycss2 parses CSS strings into token and block objects, and generates CSS strings from those objects, following the CSS Syntax Level 3 specification without enforcing specific properties or values.
Install it if your project requires CSS tokenization or syntax manipulation.
See also icalendar · pythonvCard4 · ical · types-vobject · ics · icalevents · vdirsyncer · vdf · pydifact · opack2