我需要获取电子邮件地址的提供者gmail
,outlook
等。
例如,xxxx@stackoverflow.com
返回的是google.com
与gmail
相同。
我需要找到一种捕获电子邮件提供者的方法,我已经阅读了一些有关电子邮件mx的内容,但是仍然无法正确获取此数据。
有人知道我如何得到它吗?
答案 0 :(得分:0)
提供商应与域关联,而不是与电子邮件地址本身关联。因此,您需要在域上搜索MX记录。 Straight from the docs您可以做到:
require 'resolv'
Resolv::DNS.open do |dns|
ress = dns.getresources "stackoverflow.com", Resolv::DNS::Resource::IN::MX
p ress.map { |r| [r.exchange.to_s, r.preference] }
end
=>[["aspmx.l.google.com", 1], ["alt3.aspmx.l.google.com", 10], ["alt4.aspmx.l.google.com", 10], ["alt1.aspmx.l.google.com", 5], ["alt2.aspmx.l.google.com", 5]]