Nodeschool Public Materials

    droideka

    1.1.2 • Public • Published

    droideka

    build status dependency status

    fight back against email scrapers

    What it does

    • finds all <a href="mailto:... email addresses in your html
    • encrypts them
    • appends some JS to your html that decrypts them 1/2 second after the page loads

    How to use it

    var droideka = require('droideka');

    html = droideka(html[, seed])

    Your HTML

    <p>
      Here is my email:
      <a href="mailto:some@email">some@email.com</a>
    </p>
    <p>
      Here is some more html stuff
    </p>

    In node run it through droideka

    html = droideka(html);

    Here is the output

    <p>
      Here is my email:
      <span id="cihzenf7j0000i4dxll7gftvj"><noscript>You must enable JavaScript to see the email.</noscript></span>
    </p>
    <p>
      Here is some more html stuff
    </p>
    <script type="application/javascript">setTimeout(function(){var d=function(b){var c=b.substring(0,87);b=b.substring(c.length);var e,f,g,h='',d;for(e=0;e<b.length;e++)f=b.charAt(e),g=c.indexOf(f),d=(g-b.length+c.length)%c.length,d=0>d?c.length+d:d,h+=0<=g?c[d]:f;return h};(function(){var a=document.getElementById("cihzenf7j0000i4dxll7gftvj");if(!a)return;a.innerHTML=d("eY\"1]U.ZbrBtmCh[-:VpK!6WuXx8dlwM2GJ,kfT#(RHD&5L}I^o7~F*4S0{qzO%n3>gsQPvA'@cyjN<9=)a+iE$Gf S7H9,&*f#AFUq6U*HdH*f#A&K6U*HdH*f#AG/fK");}());}, 500);</script> 

    Take that spammers!

    seed can be any string, i.e. your package.json's version string.

    encoded = droideka.encode(text[, seed])

    Lightly encrypt some text. (not cryptographically secure)

    droideka.js_code_decode

    A string of JS code that creates a local function d that can be used for decoding.

    haml += '<script>';
    html += droideka.js_code_decode;//insert the decoding function
    html += 'var email = d(' + JSON.stringify(encoded) + ');';//call it
    html += '</script>';

    License

    MIT

    Keywords

    none

    Install

    npm i droideka

    DownloadsWeekly Downloads

    5

    Version

    1.1.2

    License

    MIT

    Last publish

    Collaborators

    • farskipper