diff --git a/EmailHarvester.py b/EmailHarvester.py index 942239a..cff4d2f 100644 --- a/EmailHarvester.py +++ b/EmailHarvester.py @@ -251,7 +251,7 @@ if __name__ == '__main__': all_emails = unique(all_emails) if not all_emails: - print(red("No emails found")) + print(red("\nNo emails found!")) sys.exit(4) msg = "\n\n[+] {} emails found:".format(len(all_emails)) diff --git a/plugins/baidu.py b/plugins/baidu.py new file mode 100644 index 0000000..b601d63 --- /dev/null +++ b/plugins/baidu.py @@ -0,0 +1,42 @@ +""" + This file is part of EmailHarvester + Copyright (C) 2016 @maldevel + https://github.com/maldevel/EmailHarvester + + EmailHarvester - A tool to retrieve Domain email addresses from Search Engines. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + 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. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + + For more see the file 'LICENSE' for copying permission. +""" + +#config = None +app_emailharvester = None + + +def search(domain, limit): + app_emailharvester.show_message("\n[+] Searching in Baidu..\n") + url = 'http://www.baidu.com/search/s?wd="%40{word}"&pn={counter}' + app_emailharvester.init_search(url, domain, limit, 0, 10) + app_emailharvester.process() + return app_emailharvester.get_emails() + + +class Plugin: + def __init__(self, app):#, conf + global app_emailharvester, config + #config = conf + app.register_plugin('baidu', {'search': search}) + app_emailharvester = app + \ No newline at end of file diff --git a/plugins/dogpile.py b/plugins/dogpile.py new file mode 100644 index 0000000..7fd3d22 --- /dev/null +++ b/plugins/dogpile.py @@ -0,0 +1,42 @@ +""" + This file is part of EmailHarvester + Copyright (C) 2016 @maldevel + https://github.com/maldevel/EmailHarvester + + EmailHarvester - A tool to retrieve Domain email addresses from Search Engines. + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + 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. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + + For more see the file 'LICENSE' for copying permission. +""" + +#config = None +app_emailharvester = None + + +def search(domain, limit): + app_emailharvester.show_message("\n[+] Searching in Dogpile..\n") + url = 'http://www.dogpile.com/search/web?qsi={counter}&q="%40{word}"' + app_emailharvester.init_search(url, domain, limit, 1, 10) + app_emailharvester.process() + return app_emailharvester.get_emails() + + +class Plugin: + def __init__(self, app):#, conf + global app_emailharvester, config + #config = conf + app.register_plugin('dogpile', {'search': search}) + app_emailharvester = app + \ No newline at end of file diff --git a/plugins/google.py b/plugins/google.py index f6c3c29..47ce552 100644 --- a/plugins/google.py +++ b/plugins/google.py @@ -27,7 +27,7 @@ app_emailharvester = None def search(domain, limit): app_emailharvester.show_message("\n[+] Searching in Google..\n") - url = 'http://www.google.com/search?num=100&start={counter}&hl=en&q=%40"{word}"' + url = 'http://www.google.com/search?num=100&start={counter}&hl=en&q="%40{word}"' app_emailharvester.init_search(url, domain, limit, 0, 100) app_emailharvester.process() return app_emailharvester.get_emails() diff --git a/plugins/linkedin.py b/plugins/linkedin.py index 3d090c5..8cc6802 100644 --- a/plugins/linkedin.py +++ b/plugins/linkedin.py @@ -48,11 +48,19 @@ def search(domain, limit): all_emails += app_emailharvester.get_emails() app_emailharvester.show_message("\n[+] Searching in Google + Linkedin..\n") - googleUrl = 'http://www.google.com/search?num=100&start={counter}&hl=en&q=site%3Alinkedin.com+%40"{word}"' + googleUrl = 'http://www.google.com/search?num=100&start={counter}&hl=en&q=site%3Alinkedin.com+"%40{word}"' app_emailharvester.init_search(googleUrl, domain, limit, 0, 100) app_emailharvester.process() all_emails += app_emailharvester.get_emails() + app_emailharvester.show_message("\n[+] Searching in Baidu + Linkedin..\n") + url = 'http://www.baidu.com/search/s?wd=site%3Alinkedin.com+"%40{word}"&pn={counter}' + app_emailharvester.init_search(url, domain, limit, 0, 10) + app_emailharvester.process() + all_emails += app_emailharvester.get_emails() + + #dogpile seems to not support site: + return all_emails