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

birder

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

birder

Determines if any given Twitter user is a bot.

  • 0.1.3
  • unpublished
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
0
Maintainers
1
Weekly downloads
 
Created
Source

What is this?

Birder is a Node.js module that helps to determine if any given Twitter user might be a bot.

You can have a look at Twipio to see a running demo.

Getting strted

No quantum computing here.

npm install birder

Usage

Add this module to your app.

var birder = require('birder');

You will need to provide Twitter credentials for birder to be able to make Twitter API calls.

var john = new birder({
	consumer_key: 'your consumer key',
	consumer_secret: 'your consumer secret',
	access_token_key: 'your access token key',
	access_token_secret: 'your access token secret'
});

Then use check function with array of Twitter usernames you wish to check.

john.check(['TeodorsZeltins', 'BarackObama']); // single username string is fine too

This should return you an array of Twitter user objects with additional fields check and ratio.

[{
	... // usual Twitter user stuff

	checks: { // contains each check made and pass or fail
		followers: false,
		first: false,
		... // and so forth
	},
	ratio: 0.84 // how likely a user is a bot
}]

Note: user objects are returned in unknown order and some might be missing if such Twitter user does not exist.

How checks work?

It makes following checks and returns true or false.

  • Followers - is followers/follwing ratio positive.
  • First - is the first tweet a retweet.
  • Picture - is there a profile picture.
  • Description - is there a description.
  • Protected - is content protected.
  • Verified - is verified.
  • Links - is there any links in user profile.
  • Age - how old is account versus existance of Twitter.

There are some more checks that are not yet implemented.

  • Face - is user profile picture containing a face.
  • Tweets - how many of user tweets are retweets.
  • Regularity - how many tweets a user creates per day.
  • Facebook - is there a Facebook profile link.
  • Sleep - is user tweeting 24/7 or does he sleep.

Then, depending on how many checks are made and how many are passed, you get the ratio or how likely it is that a user is bot.

Disclaimer

Unforunately, there is no simple and solid way of telling if someone is or is not a bot. If one is truly determined to create a undetectable bot he can.

That being said, most of the bots are not very sophisticated and patterns emerge. This should red flag most bots. Then again, that's like saying police catches most of the criminals.

Issues

Found a bug or better solution? Please report to the issue section.

Keywords

FAQs

Package last updated on 08 Dec 2015

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