Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

django-mailmangler

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

django-mailmangler

Template tags to weakly obfuscate an email behind JavaScript or a CAPTCHA (a reCAPTCHA)

  • 0.1.0
  • PyPI
  • Socket score

Maintainers
1

============ Mail Mangler

A simple Django app providing template tags that attempt to obfuscate raw e-mail addresses to make them ever so slightly more difficult to scrape.

To be less-obtrusive, JavaScript is used to translate mangled source into a normal e-mail address. If JavaScript is not present, the reCAPTCHA mailhide service is offered to deobfuscate the addresses.

Using images, LTR-RTL hacks, or forcing reCAPTCHA access might be better at keeping your address safe from bots, but it's annoying for legitimate users. By using JavaScript, hopefully we can thwart some of the dumbest bots into farming someone else's email address without much of a usability hit.

Quick start

  1. In your Django's settings:
  • Add 'mailmangler' to your INSTALLED_APPS.

  • Add MAILMANGLE_PUBLIC and MAILMANGLE_SECRET, with keys from the reCAPTCHA Mailhide API: http://www.google.com/recaptcha/mailhide/apikey, e.g. ::

    MAILMANGLE_PUBLIC = 'your-key...==' MAILMANGLE_SECRET = '123789...abcd'

  1. Load the tag library with {% load mailmangler %}

  2. In the <head> of your template, add {% mailmangle_js %}

  3. Pipe (filter) email addresses through mailmangle or mailmangle_linked, e.g. ::

    {{ my_email_var|mailmangle }} {{ "alice@example.com"|mailmangle }} {{ "bob@example.net"|mailmangle_linked }}

    will produce:

    1. A JS obfuscated, unlinked string of whatever my_email_var was.
    2. A JS obfuscated, unlinked string of "alice@example.com"
    3. A JS obfuscated, string with mailto link of "bob@example.com"

    If JS is not present, a reCAPTCHA mailhide link is available in <noscript> tags.

Keywords

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc