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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dcimport-0.2.1.tar.gz (19.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dcimport-0.2.1-py3-none-any.whl (22.9 kB view details)

Uploaded Python 3

File details

Details for the file dcimport-0.2.1.tar.gz.

File metadata

  • Download URL: dcimport-0.2.1.tar.gz
  • Upload date:
  • Size: 19.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for dcimport-0.2.1.tar.gz
Algorithm Hash digest
SHA256 c86bec6ab3867bf52c36cf9dd0ab4e6f66d1360bac0b1aa66437d560ebc61a5f
MD5 af26f60f541d2fc1e1a22fa33d1cce46
BLAKE2b-256 9e62102a6df3d28836a1cd5a79f3e11d26dd8f88d1b5b006ccd9f3ec68c3d369

See more details on using hashes here.

Provenance

The following attestation bundles were made for dcimport-0.2.1.tar.gz:

Publisher: publish.yml on artificiadrian/dcimport

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dcimport-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: dcimport-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 22.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.13

File hashes

Hashes for dcimport-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ced53b5b4e5af6275858d8ee382a86c9e09b9fb4a682455e4e2b2eb64a2a6056
MD5 c00f073eae4c6d561a93d61ef57cb5b6
BLAKE2b-256 cf98dd7f70637218a0a72700f65dc30eeb8b623f3568eb20231dcee5d61c073e

See more details on using hashes here.

Provenance

The following attestation bundles were made for dcimport-0.2.1-py3-none-any.whl:

Publisher: publish.yml on artificiadrian/dcimport

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.2.1 This release

2 files

0.1.1

2 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