addrcollector is a Python application for collecting email addresses from email messages. It is currently published on GitHub.
addrcollector collects email addresses from email messages. This is similar to Thunderbird’s “Collected Addresses” feature and corresponding functionality in other software. In the case of addrcollector, however, email messages are read from standard input, or manually on the command line, and the email address database can be queried by keyword.
It is possible for addrcollector to be integrated with a mail delivery system like Procmail or Maildrop to collect addresses from all messages, or with mail clients like Mutt or Alpine to collect addresses selectively.
Dates and display names are also collected. If an address is seen more than once, then (1) the date is updated and (2) the display name is updated if the new one is longer than the old one.
For example, to add an address manually (the display name is optional):
$ addrcollector add email@example.com "Jon Smith" $ addrcollector add firstname.lastname@example.org
To import addresses from a message passed on standard input:
$ addrcollector import < mymail.msg
To search for addresses using keywords (multiple keywords may be given and are ORed):
$ addrcollector search jon sven 2020-07-03 email@example.com Jon Smith 2020-07-03 firstname.lastname@example.org
Installing from PyPI
addrcollector is published on PyPI and can be installed with pip.
Install the addrcollector package.
$ pip3 install addrcollector
This should provide a ~/.local/bin/addrcollector script that you can execute.
If that path is included in your PATH environment variable, you can run the addrcollector command without typing the entire path. To set this up (if it hasn’t been done already), add the following code in your ~/.bash_profile (it may be ~/.profile for a shell other than Bash):
if [ -d "$HOME/.local/bin" ] ; then PATH="$HOME/.local/bin:$PATH" fi
Copyright and License
Copyright 2020 Owen T. Heisler. Creative Commons Zero v1.0 Universal (CC0 1.0).
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This source code may be used, modified, and/or redistributed according to the terms of the Creative Commons Zero 1.0 Universal (CC0 1.0) license. You should have received a copy of this license along with this program (see LICENSE). If not, see <https://creativecommons.org/publicdomain/zero/1.0/>.