如果你谷歌"如何查看存在的电子邮件地址"问题,你会发现,基本上,只有使用SMTP协议的解决方案才是不可靠的。我尝试了这种方法,发现Gmail SMTP服务器说"是的,这封电子邮件是在这里注册的"在我询问的每个电子邮件地址上。我怀疑这种策略是在大多数流行的电子邮件服务器上使用的。
答案 0 :(得分:3)
我想要分享的方法用于Gmail注册表单,以确保您要注册一个全新的电子邮件。它使用AJAX请求询问Gmail服务器是否存在给定的电子邮件
Request URL:https://accounts.google.com/InputValidator?resource=SignUp
Request Method:POST
Status Code:200
Remote Address:173.194.222.84:443
alt-svc:quic=":443"; ma=2592000; v="37,36,35"
cache-control:private, max-age=0
content-encoding:gzip
content-type:application/json; charset=utf-8
date:Wed, 29 Mar 2017 21:06:06 GMT
expires:Wed, 29 Mar 2017 21:06:06 GMT
server:GSE
set-cookie:GAPS=1:<redacted>;Path=/;Expires=Fri, 29-Mar-2019 21:06:06 GMT;Secure;HttpOnly;Priority=HIGH
status:200
strict-transport-security:max-age=10893354; includeSubDomains
x-content-type-options:nosniff
x-frame-options:DENY
x-xss-protection:1; mode=block
Provisional headers are shown
Content-type:application/json
Origin:https://accounts.google.com
Referer:https://accounts.google.com/SignUp?hl=en-GB
User-Agent:Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
resource=SignUp
{"input01":{"Input":"GmailAddress","GmailAddress":"andy.v.che","FirstName":"","LastName":""},"Locale":"en-GB"}
{"input01":{"Valid":"false","ErrorMessage":"Someone already has that username. Note that we ignore full stops and capitalisation in usernames. Try another?","Errors":{"GmailAddress":"Someone already has that username. Note that we ignore full stops and capitalisation in usernames. Try another?"},"ErrorData":["andyvche959"]},"Locale":"en_GB"}
正如您所看到的,如果此类电子邮件确实存在,则响应中会显示"Valid":"false"
,如果不存在,则会显示(剧透)"Valid":"true"
。
来自Gmail的人确实理解垃圾邮件发送者可以使用此方法查找现有的电子邮件。这就是他们不允许使用它进行大规模扫描的原因。我正在进行一段时间的扫描,大约每天只扫描200封电子邮件。
我每分钟扫描一封电子邮件,如果我收到回复“否,此电子邮件不存在”,我还询问我自己的电子邮件是否存在。如果我收到“否,您的电子邮件也不存在”答案,我可以清楚地了解到我的IP地址禁止使用Gmail服务器。然后,我休息了45分钟以取消禁止,然后继续循环。每天扫描的电子邮件数量在200左右波动。
您可能会问:您是否像垃圾邮件发送者那样进行了扫描,您的扫描目的是什么?
我的回答是:我试图找到一个不清楚地写下他的电子邮件的人(草书不好)。没有其他选择可以找到他。
他的书面邮件中有3封不清楚的信件,但很明显它的域名是gmail.com,所以我想出了一种方法来查找Gmail上存在的电子邮件地址,生成一个列表所有可能的电子邮件(尝试用所有可能的英文字母替换未知符号)并检查它们是否存在。然后,发信给所有现有的。
this问题讨论了发布此信息的权利。我理解这篇文章对于垃圾邮件发送者非常有用,所以为了安全起见,我可以将其部分删除甚至完全删除。