Skip to main content

dcimport

PyPI Platform License: MIT

dcimport copies photos and videos from an iPhone to a local folder over USB. It reads directly from the device without iCloud and installs nothing on the phone.

Imports are incremental. A local database tracks completed files, so later runs copy only new or changed media. Interrupted imports continue when you run the same command again.

dcimport importing media from an iPhone

Installation

Requires Python 3.11+.

uv tool install dcimport
# or: pip install dcimport

Install the optional HEIC converter with uv tool install "dcimport[heic]".

Quick start

Connect the iPhone by USB, unlock it, and tap Trust. Then choose the destination folder:

dcimport ~/Pictures/iPhone

On Windows, install Apple Devices or iTunes for the device drivers.

Useful examples:

dcimport ~/Pictures --layout "{mtime:%Y}/{mtime:%m}/{name}"
dcimport ~/Pictures --since 2024-01-01 --convert-heic
dcimport ~/Pictures --skip-live-videos
dcimport ~/Pictures --manifest import.json

Run dcimport --help for the full list of options.

File names and folders

--layout accepts {name} and {mtime:...}. The latter uses strftime codes for the file modification time. Slashes create subfolders.

The default layout is {mtime:%Y-%m-%d_%H-%M-%S}_{name}. The selected layout is saved for that destination. Use --force to change it later.

Import tracking

media.db in the destination records each device path, size, and modification time. Editing media on the phone changes its identity and imports it again. Existing local files are not overwritten; name conflicts receive _1, _2, and later suffixes.

Delete media.db only if you intentionally want the next run to import every file again.

Databases with timezone-less records from versions before 0.2 require --legacy-timezone ZONE. If a timestamp falls in a repeated daylight-saving hour, also pass --legacy-fold earlier or --legacy-fold later.

Metadata

Release files for dcimport 0.2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dcimport 0.2.1
File Size Uploaded
dcimport-0.2.1.tar.gz 19.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dcimport 0.2.1
File Interpreter ABI Platform
dcimport-0.2.1-py3-none-any.whl Python 3 none any Details

Total release size: 42.0 kB

Release files / dcimport-0.2.1.tar.gz

Download URL dcimport-0.2.1.tar.gz
Size 19.2 kB
Tags Source
SHA-256 checksum
How to use checksums
c86bec6ab3867bf52c36cf9dd0ab4e6f66d1360bac0b1aa66437d560ebc61a5f
BLAKE2b-256 checksum
How to use checksums
9e62102a6df3d28836a1cd5a79f3e11d26dd8f88d1b5b006ccd9f3ec68c3d369
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 20, 2026.

Transparency log

Release files / dcimport-0.2.1-py3-none-any.whl

Download URL dcimport-0.2.1-py3-none-any.whl
Size 22.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ced53b5b4e5af6275858d8ee382a86c9e09b9fb4a682455e4e2b2eb64a2a6056
BLAKE2b-256 checksum
How to use checksums
cf98dd7f70637218a0a72700f65dc30eeb8b623f3568eb20231dcee5d61c073e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.13

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 20, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page