{"id":26577950,"url":"https://github.com/fayyez/emailer-tool","last_synced_at":"2025-03-23T04:18:12.621Z","repository":{"id":283821588,"uuid":"953010607","full_name":"Fayyez/Emailer-Tool","owner":"Fayyez","description":"A Python-based email automation tool for sending emails with attachments, CC lists, and logging functionality. This tool is modular and easy to configure for various use cases.","archived":false,"fork":false,"pushed_at":"2025-03-22T11:23:26.000Z","size":6,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-22T12:24:19.020Z","etag":null,"topics":["email-sender","emailer","python","python-script"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Fayyez.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-03-22T11:10:53.000Z","updated_at":"2025-03-22T11:23:30.000Z","dependencies_parsed_at":"2025-03-22T12:34:45.284Z","dependency_job_id":null,"html_url":"https://github.com/Fayyez/Emailer-Tool","commit_stats":null,"previous_names":["fayyez/emailer-tool"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fayyez%2FEmailer-Tool","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fayyez%2FEmailer-Tool/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fayyez%2FEmailer-Tool/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Fayyez%2FEmailer-Tool/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Fayyez","download_url":"https://codeload.github.com/Fayyez/Emailer-Tool/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245052898,"owners_count":20553223,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["email-sender","emailer","python","python-script"],"created_at":"2025-03-23T04:18:12.026Z","updated_at":"2025-03-23T04:18:12.600Z","avatar_url":"https://github.com/Fayyez.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Email Tool\n\nA Python-based email automation tool for sending emails with attachments, CC lists, and logging functionality. This tool is modular and easy to configure for various use cases.\n\n## Features\n\n- Send emails to multiple recipients.\n- Attach files to emails.\n- Add CC recipients.\n- Log email statuses (success, error, invalid email).\n- Modular design for easy maintenance and extension.\n\n## Project Structure\n\n```\nEmail Tool/\n├── emailer.py                # Main script to execute the emailer tool\n├── modules/\n│   ├── email_utils.py        # Utility functions for email handling\n│   ├── smtp_utils.py         # Utility functions for SMTP server setup\n├── receipient_list.txt       # List of recipient email addresses\n├── cc_list.txt               # List of CC email addresses\n├── subject.txt               # Email subject\n├── body.txt                  # Email body\n├── log.csv                   # Log file for email statuses\n```\n\n## Prerequisites\n\n- Python 3.6 or higher\n- Required Python libraries:\n  - `smtplib`\n  - `email`\n  - `os`\n  - `re`\n  - `datetime`\n  - `time`\n\n## Setup\n\n1. Clone the repository:\n\n   ```shell\n   git clone \u003crepository-url\u003e\n   cd Email Tool\n   ```\n\n2. Configure the following files:\n   - `receipient_list.txt`: Add recipient email addresses (one per line).\n   - `cc_list.txt`: Add CC email addresses (one per line).\n   - `subject.txt`: Add the email subject.\n   - `body.txt`: Add the email body content.\n\n3. Update the `emailer.py` script:\n   - Set the `sender` email address and `password` in the global variables section.\n   - Add file paths for attachments in the `attachment_file_paths` list.\n\n## Usage\n\n1. Run the script:\n\n   ```shell\n   python emailer.py\n   ```\n\n2. The script will:\n   - Validate the sender email address.\n   - Check for required files (recipients, CC list, subject, body, log).\n   - Send emails to all valid recipients.\n   - Log the status of each email in `log.csv`.\n\n## Logging\n\nThe `log.csv` file records the status of each email with the following columns:\\\n\n- `Recipient`: The recipient's email address.\n- `Status`: `success`, `error`, or `invalid`.\n- `DateTime`: The timestamp of the email attempt.\n- `Error`: The error message (if any).\n\n## Modular Design\n\nThe project is divided into modules for better maintainability:\n\n- `email_utils.py`: Contains functions for sending emails and validating email addresses.\n- `smtp_utils.py`: Contains functions for setting up the SMTP server.\n\n## Notes\n\n- If using Gmail, ensure you have enabled \"App Passwords\" for authentication. Refer to [Google's App Passwords Guide](https://myaccount.google.com/apppasswords).\n- The script pauses for 5 seconds between sending emails to avoid rate-limiting issues.\n\n## License\n\nThis project is licensed under the MIT License. See the `LICENSE` file for details.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffayyez%2Femailer-tool","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffayyez%2Femailer-tool","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffayyez%2Femailer-tool/lists"}