
Elasticsearch データベースでメールアドレスを検索します
この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
または、1行に1つの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関数は、見つかる可能性のある重複したメールアドレスを削除するために使用されます。この関数は、マップを使用して一意の要素を追跡し、マップのキーをスライスに戻します。