
Searches Elasticsearch database for email addresses
这个 Go 程序旨在从一系列 Elastic Search 数据库中提取电子邮件地址。
它接收一个 URL 列表,并搜索每个 URL 的数据库以查找电子邮件地址。
go install github.com/RandomRobbieBF/elastic-search-email-extractor@latest
要运行该程序,你可以通过命令行参数提供 URL 列表:
go run email_extractor.go http://111.111.111.111:9200
或者,你可以提供一个包含 URL 列表的文本文件,每行一个 URL:
go run email_extractor.go url_list.txt
该程序将忽略任何无效的 SSL 证书,仅提取电子邮件地址,并将提取到的电子邮件地址及其来源 URL 记录到文件 output.txt 中。
searchURLs 函数负责大部分工作。它接收一个 URL,执行 HTTP GET 请求以获取 HTML,然后使用 regexp 包从 HTML 中提取电子邮件地址。最后,它将找到的电子邮件地址连同该 URL 一起写入 output.txt。
main 函数负责检查命令行参数,并决定是从文本文件中读取 URL,还是使用作为命令行参数提供的 URL。然后,它为每个提供的 URL 调用 searchURLs 函数。
removeDuplicates 函数用于移除可能找到的重复电子邮件地址。该函数使用 map 来跟踪唯一元素,然后将 map 的键转换回切片。