Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/shahrozatiq/email-attachment-downloader-and-timestamp-resetter
An automated desktop app for downloading email attachments and aligning their timestamps with the email's original time, ensuring accurate file organization
https://github.com/shahrozatiq/email-attachment-downloader-and-timestamp-resetter
automation email-downloader emails python python-automation
Last synced: 22 days ago
JSON representation
An automated desktop app for downloading email attachments and aligning their timestamps with the email's original time, ensuring accurate file organization
- Host: GitHub
- URL: https://github.com/shahrozatiq/email-attachment-downloader-and-timestamp-resetter
- Owner: ShahrozAtiq
- Created: 2023-11-07T03:39:08.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-25T16:33:30.000Z (about 1 month ago)
- Last Synced: 2024-11-25T17:32:24.749Z (about 1 month ago)
- Topics: automation, email-downloader, emails, python, python-automation
- Language: Python
- Homepage:
- Size: 3.91 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Email Attachment Downloader & Timestamp Resetter
This desktop application is designed to streamline the process of downloading email attachments from any mail account to a computer. Moreover, it resets the timestamp of the downloaded file to match the date and time of the email itself, ensuring accurate chronological organization of files based on their original email timestamps rather than the download time.
The application monitors the configured mail account and automatically downloads attachments when an email with an attachment arrives. It then adjusts the file's timestamp to match the timestamp of the email from which the attachment originated.
## Tools and Libraries
The project is built using Python, utilizing the following tools and libraries:
- **filedate**: Python library for modifying file timestamps.
- **imaplib**: Python library for accessing and manipulating mail accounts via IMAP.
- **email**: Python library for managing email messages.
## Installation
To run the project, follow these steps:
1. **Install Python**: If Python is not installed on your system, download and install it from the [official Python website](https://www.python.org/).
2. **Install Dependencies**: Use pip to install the required dependencies by running the command:
`pip install -r requirements.txt`
3. **Configure Account Credentials**: Set up the `config.json` file with the appropriate credentials for the mail account that will be monitored.
4. **Run the Application**: Start the application by executing the following command:
`python main.py`
## How It Works
Once the app is launched and configured, it continuously monitors the specified mail account for incoming emails with attachments. When it detects an email with an attachment, it automatically downloads the attachment to the designated 'attachments' folder.
Upon downloading the attachment, the application retrieves the timestamp associated with the email and modifies the file's timestamp to match that specific email timestamp. This process ensures that the file's modified date and time align with the original email's timestamp.
The application simplifies the task of managing downloaded attachments, organizing them based on their original email timestamps rather than the time of download, thus maintaining a more accurate and meaningful chronological order.
**Note:** Make sure the application has the necessary permissions to access and modify files on your system.
## Demo
[![Watch demo](https://raw.githubusercontent.com/ShahrozAtiq/linkedin-mass-accounts-creator/master/play.webp)](https://dl.dropboxusercontent.com/scl/fi/0kqpg8bk5bxt27l2v9284/imap-downloader.mp4?rlkey=hm83a2db0xc5ctpj9bzkzgtec)
## Configuration
The `config.json` file should include the following fields:
- `mail_credentials`: Specify the credentials required to access the mail account (e.g., `username`,`password`).
- `attachment_folder`: Define the folder where attachments will be stored in `download_path`.
## Important Considerations
Ensure the mail account being used has appropriate permissions and settings to access and download attachments.
This application is intended to simplify the process of managing attachments. Use it responsibly and ensure it complies with the policies and regulations associated with accessing and handling email content.
## Support
For questions, feedback, or support, please contact
Upwork
Fiverr
Gmail
[email protected]
+923014317809