gpt4 book ai didi

email - 如何在不向其发送任何内容的情况下检查电子邮件地址是否有效?

转载 作者:行者123 更新时间:2023-12-04 00:40:36 25 4
gpt4 key购买 nike

我有一个客户有 5000 封来自他想要推广他的服务的旧列表的电子邮件。他想知道列表中的哪些电子邮件仍然有效。我想帮他检查一下——不要随机发送 5K 封电子邮件,然后被列为垃圾邮件发送者或其他什么东西。想法?

最佳答案

bucabay's答案是前进的道路。像这样的库本质上所做的是检查指定域(A、MX 或 AAAA)中(邮件)服务器的现有 DNS 记录。之后,它执行所谓的回调验证。这就是你连接到邮件服务器的地方,告诉它你想发送到特定的电子邮件地址,看看他们是否说好。

对于回调验证,您应该注意灰名单服务器对所有内容都说 OK,因此如果不实际发送电子邮件,就无法 100% 保证。这是我手动执行此操作时使用的一些代码。这是来自 here 的电子邮件地址解析器的补丁。 .

    #
# Email callback verification
# Based on http://uk2.php.net/manual/en/function.getmxrr.php
#

if (strlen($bits['domain-literal'])){
$records = array($bits['domain-literal']);
}elseif (!getmxrr($bits['domain'], $mx_records, $mx_weight)){
$records = array($bits['domain']);
}else{
$mxs = array();

for ($i = 0; $i < count($mx_records); $i++){
$mxs[$mx_records[$i]] = $mx_weight[$i];
}

asort($mxs);

$records = array_keys($mxs);
}

$user_okay = false;
for ($j = 0; $j < count($records) && !$user_okay; $j++){
$fp = @fsockopen($records[$j], 25, $errno, $errstr, 2);
if($fp){
$ms_resp = "";

$ms_resp .= send_command($fp, "HELO ******.com");
$ms_resp .= send_command($fp, "MAIL FROM:<>");

$rcpt_text = send_command($fp, "RCPT TO:<" . $email . ">");
$ms_resp .= $rcpt_text;

$ms_code = intval(substr($rcpt_text, 0, 3));
if ($ms_code == 250 || $ms_code == 451){ // Accept all user account on greylisting server
$user_okay = true;
}

$ms_resp .= send_command($fp, "QUIT");

fclose($fp);
}
}

return $user_okay ? 1 : 0;

关于email - 如何在不向其发送任何内容的情况下检查电子邮件地址是否有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3024819/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com