daily pastebin goal
8%
SHARE
TWEET

Untitled

a guest Aug 23rd, 2017 330 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. #!/usr/bin/env ruby
  2.  
  3. require 'mailgun'
  4. require 'pp'
  5.  
  6. api_key = ARGV[0]
  7.  
  8. raise "no api key" if api_key.nil?
  9.  
  10. data = DATA.read
  11. emails = data.split("\n")
  12.  
  13. puts "Emails size: #{emails.size}"
  14. puts "Emails uniq size: #{emails.uniq.size}\n"
  15.  
  16. emails.uniq.each_with_index do |email, index|
  17.   mg_obj = Mailgun::Address.new(api_key)
  18.   res = mg_obj.validate(email)
  19.  
  20.   unless res["is_valid"]
  21.     puts "\nInvalid email address #{email}:"
  22.     pp res
  23.   else
  24.     print "."
  25.   end
  26.  
  27.   # # Example response:
  28.   # {
  29.   #     "address" => "alice@mailgun.net",
  30.   #     "did_you_mean" => nil,
  31.   #     "is_valid" => true,
  32.   #     "parts" => {
  33.   #         "display_name" => nil,
  34.   #         "domain" => "mailgun.net",
  35.   #         "local_part" => "alice",
  36.   #     },
  37.   # }
  38. end
  39.  
  40. puts "\nDone"
  41.  
  42. __END__
  43. new line separated list of emails goes here
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top