加密邮箱地址,避免被爬虫抓取,发送垃圾信息

Posted xiaohunshi

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了加密邮箱地址,避免被爬虫抓取,发送垃圾信息相关的知识,希望对你有一定的参考价值。

用简单的算法,对邮箱地址进行加密,解密:

<?php
function deCFEmail($encode){
    $k = hexdec(substr($encode,0,2));
    for($i=2, $m=''; $i < strlen($encode) - 1; $i += 2){
        $m.=chr(hexdec(substr($encode, $i, 2))^$k);
    }
    return $m;
}
function encodeEmail($email, $key=0) {
    $chars = str_split($email);
    $string = '';
    $key = $key ? $key : rand(10, 99);
    foreach ($chars as $value) {
        $string .= sprintf("%02s", dechex(ord($value)^$key));
    }
    return dechex($key).$string;
}

echo encodeEmail("abc@abc.com")."
";
echo deCFEmail("4c2d2e2f0c2d2e2f622f2321")."
";
?>

对应的js:

<script>
    !function () { "use strict"; function e(e) { try { if ("undefined" == typeof console) return; "error" in console ? console.error(e) : console.log(e) } catch (e) { } } function t(e) { return d.innerhtml = '<a href="' + e.replace(/"/g, "&quot;") + '"></a>', d.childNodes[0].getAttribute("href") || "" } function r(e, t) { var r = e.substr(t, 2); return parseInt(r, 16) } function n(n, c) { for (var o = "", a = r(n, c), i = c + 2; i < n.length; i += 2) { var l = r(n, i) ^ a; o += String.fromCharCode(l) } try { o = decodeURIComponent(escape(o)) } catch (u) { e(u) } return t(o) } function c(t) { for (var r = t.querySelectorAll("a"), c = 0; c < r.length; c++)try { var o = r[c], a = o.href.indexOf(l); a > -1 && (o.href = "mailto:" + n(o.href, a + l.length)) } catch (i) { e(i) } } function o(t) { for (var r = t.querySelectorAll(u), c = 0; c < r.length; c++)try { var o = r[c], a = o.parentNode, i = o.getAttribute(f); if (i) { var l = n(i, 0), d = document.createTextNode(l); a.replaceChild(d, o) } } catch (h) { e(h) } } function a(t) { for (var r = t.querySelectorAll("template"), n = 0; n < r.length; n++)try { i(r[n].content) } catch (c) { e(c) } } function i(t) { try { c(t), o(t), a(t) } catch (r) { e(r) } } var l = "/cdn-cgi/l/email-protection#", u = ".__cf_email__", f = "data-cfemail", d = document.createElement("div"); i(document), function () { var e = document.currentScript || document.scripts[document.scripts.length - 1]; e.parentNode.removeChild(e) }() }();
</script>

使用方式:

<a href="/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="4c2d2e2f0c2d2e2f622f2321">[email&#160;protected]</a>

以上是关于加密邮箱地址,避免被爬虫抓取,发送垃圾信息的主要内容,如果未能解决你的问题,请参考以下文章

使用Python编写多线程爬虫抓取百度贴吧邮箱与手机号

WireShark抓取QQ邮箱

python 爬虫遇到 Cloudflare 邮箱加密

爬虫应用--根据关键词自动抓取百度搜索记录并发送到指定邮箱

Python爬虫:抓取手机APP的数据

app里使用163邮箱发送邮件,被163认为是垃圾邮件的坑爹经历!_ !