anagramatron | twitter anagram hunter

 by   cmyr Python Version: Current License: No License

kandi X-RAY | anagramatron Summary

kandi X-RAY | anagramatron Summary

anagramatron is a Python library. anagramatron has no vulnerabilities, it has build file available and it has low support. However anagramatron has 1 bugs. You can download it from GitHub.

Anagramatron hunts for pairs of tweets that use the exact same set of letters. This script connects to the twitter stream. When it receives a new tweet it runs it through some filters, ignoring tweets that contain things like links or @mentions, or that contain less then a minimum number of characters. For each tweet that passes these filters, the occurrences of each letter are counted; this serves as a simple anagram-unique hash, i.e. any pair of anagrams sorted this way will produce identical strings. This hash is checked against a list of all the hashes we have stored so far. If nothing is found, the hash and the original text are saved in a database. If a match is found, the original text of both tweets are run through some comparison tests to check for like-ness. If they pass that text they are flagged for review, to make sure they aren't too similar, or haven't been posted previously, etcetera. anagramatron.py contains the main run loop, which uses classes in twitterhandler to connect to the twitter streaming and REST api, and classes in anagramfinder to archive and retrieve possible anagrams for likeness comparison. Data storage is handled by multidbm.py, a wrapper for a flexible number of dbm databases, which lets older tweets be automatically removed when the database gets too full. there is also a small bottle-powered webserver that allows remote review of possible anagrams. There is a companion iPhone app that I use to check up on progress. when hits are approved (manually) they are automatically posted to associated twitter and tumblr accounts. Q: Is this manually curated?. A: Mostly for issues of volume ( there are a lot of variations of 'goooood mooornnniinng!', there are a lot of spam bots posting subtely different versions of the same message, etc) the bot doesn't automatically post every anagram it finds. Essentially there's an iphone client that reviews matches, which are manually approved or rejected. Q: How does this handle numerals / non-latin characters?. A: Most tweets that contain non-latin characters are ignored. Punctuation and emoji are not counted when considering anagramdom. Q: What is the relationship between the twitter page and the tumblr?. A: One-to-one. When a match is approved, it gets posted to both. this script makes use of python twitter tools for handling twitter interactions, tumblpy for posting to tumblr, and bottle + cherrypy to run a webserver.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              anagramatron has a low active ecosystem.
              It has 140 star(s) with 9 fork(s). There are 5 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              There are 4 open issues and 3 have been closed. There are 1 open pull requests and 0 closed requests.
              It has a neutral sentiment in the developer community.
              The latest version of anagramatron is current.

            kandi-Quality Quality

              anagramatron has 1 bugs (0 blocker, 0 critical, 1 major, 0 minor) and 32 code smells.

            kandi-Security Security

              anagramatron has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              anagramatron code analysis shows 0 unresolved vulnerabilities.
              There are 3 security hotspots that need review.

            kandi-License License

              anagramatron does not have a standard license declared.
              Check the repository for any license declaration and review the terms closely.
              OutlinedDot
              Without a license, all rights are reserved, and you cannot use the library in your applications.

            kandi-Reuse Reuse

              anagramatron releases are not available. You will need to build from source code and install.
              Build file is available. You can build the component from source.
              anagramatron saves you 797 person hours of effort in developing the same functionality from scratch.
              It has 1832 lines of code, 160 functions and 23 files.
              It has high code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi has reviewed anagramatron and discovered the below as its top functions. This is intended to give you an instant insight into anagramatron implemented functionality, and help decide if they suit your requirements.
            • Run hitserver
            • Handle input
            • Process a hit
            • Extract text from input
            • Start a hit server
            • Get all hits
            • Return all hits in the database
            • Authenticate with auth
            • Gets the HITDB instance
            • Start a CherryPy WSGI server
            • Load the metadata
            • Run the pipeline
            • POST a HIT
            • Verify the integrity of mdbm chunks
            • Post a tweet
            • Modify a HIT
            • Perform maintenance on all databases
            • Mark seen seen as seen
            • Handle direct messages
            • Test if two elements are similar
            • Get information about the user
            • Calculates the letter count and unique letters of a tweet
            • Close the stream
            • Do maintenance
            • Dump all hits to a JSON file
            • The main loop
            • Start hit server
            Get all kandi verified functions for this library.

            anagramatron Key Features

            No Key Features are available at this moment for anagramatron.

            anagramatron Examples and Code Snippets

            No Code Snippets are available at this moment for anagramatron.

            Community Discussions

            No Community Discussions are available at this moment for anagramatron.Refer to stack overflow page for discussions.

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install anagramatron

            You can download it from GitHub.
            You can use anagramatron like any standard Python library. You will need to make sure that you have a development environment consisting of a Python distribution including header files, a compiler, pip, and git installed. Make sure that your pip, setuptools, and wheel are up to date. When using pip it is generally recommended to install packages in a virtual environment to avoid changes to the system.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/cmyr/anagramatron.git

          • CLI

            gh repo clone cmyr/anagramatron

          • sshUrl

            git@github.com:cmyr/anagramatron.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link