All Projects β†’ ryanmcdermott β†’ Birdseed

ryanmcdermott / Birdseed

Licence: mit
🐦 🎲 Use Twitter's Search API to get random numbers

Programming Languages

python
139335 projects - #7 most used programming language

Projects that are alternatives of or similar to Birdseed

trumptweets
Download data on all of Donald Trump's (@RealDonaldTrump) tweets
Stars: ✭ 39 (-51.85%)
Mutual labels:  tweets, twitter-api
tweetsOLAPing
implementing an end-to-end tweets ETL/Analysis pipeline.
Stars: ✭ 24 (-70.37%)
Mutual labels:  tweets, twitter-api
discord-twitter-webhooks
πŸ€– Stream tweets to Discord
Stars: ✭ 47 (-41.98%)
Mutual labels:  tweets, twitter-api
Bughunt
A weekly challenge where we share some code and you find a bug in it.
Stars: ✭ 68 (-16.05%)
Mutual labels:  hash, tweets
Linqtotwitter
LINQ Provider for the Twitter API (C# Twitter Library)
Stars: ✭ 401 (+395.06%)
Mutual labels:  twitter-api, tweets
tweet-delete
Self-destructing Tweets so you too can be cool 😎
Stars: ✭ 68 (-16.05%)
Mutual labels:  tweets, twitter-api
TwitterPiBot
A Python based bot for Raspberry Pi that grabs tweets with a specific hashtag and reads them out loud.
Stars: ✭ 85 (+4.94%)
Mutual labels:  tweets, twitter-api
TwitterAutoReplyBot
This is a tiny Python script that replies to a specified number of tweets containing a specified hashtag.
Stars: ✭ 33 (-59.26%)
Mutual labels:  tweets, twitter-api
Tweetie
Simple jQuery Twitter feed plugin
Stars: ✭ 314 (+287.65%)
Mutual labels:  twitter-api, tweets
Twitter Scraper
Scrape the Twitter Frontend API without authentication.
Stars: ✭ 3,037 (+3649.38%)
Mutual labels:  twitter-api, tweets
prvhash
PRVHASH - Pseudo-Random-Value Hash. Hash functions, PRNG with unlimited period, randomness extractor. (Codename Gradilac/Π“Ρ€Π°Π΄ΠΈΠ»Π°ΠΊ)
Stars: ✭ 194 (+139.51%)
Mutual labels:  random, hash
Twitter Post Fetcher
Fetch your twitter posts without using the new Twitter 1.1 API. Pure JavaScript! By Jason Mayes
Stars: ✭ 886 (+993.83%)
Mutual labels:  twitter-api, tweets
nitter scraper
Scrape Twitter API without authentication using Nitter.
Stars: ✭ 31 (-61.73%)
Mutual labels:  tweets, twitter-api
SMMT
Social Media Mining Toolkit (SMMT) main repository
Stars: ✭ 116 (+43.21%)
Mutual labels:  tweets, twitter-api
stweet
Advanced python library to scrap Twitter (tweets, users) from unofficial API
Stars: ✭ 287 (+254.32%)
Mutual labels:  tweets, twitter-api
Archive-Tweets
Archive and Delete Liked and Posted Tweets
Stars: ✭ 28 (-65.43%)
Mutual labels:  tweets, twitter-api
Libchaos
Advanced library for randomization, hashing and statistical analysis (devoted to chaos machines). πŸ”¬
Stars: ✭ 1,619 (+1898.77%)
Mutual labels:  hash, random
Twitterdelete
πŸ’€ Delete your old, unpopular tweets.
Stars: ✭ 231 (+185.19%)
Mutual labels:  twitter-api, tweets
archive-explorer-web
Browse your Twitter archive with a friendly, responsive, full experience, and quickly delete the tweets you don't want.
Stars: ✭ 19 (-76.54%)
Mutual labels:  tweets, twitter-api
Twitter
Twitter API for Laravel 5.5+, 6.x, 7.x & 8.x
Stars: ✭ 755 (+832.1%)
Mutual labels:  twitter-api, tweets

Birdseed

What is it?

birdseed is a utility to create pseudo and/or "real" random numbers from tweets based on a particular search query over Twitter's API. Use Twitter's noise to your advantage!

What else?

This is for fun. It's not secure. Don't use it in production :)

It can be run in two modes: real=True and real=False. Real mode is default.

When run in real mode, birdseed will get up to 100 tweets for a particular search query, compute a hash for each tweet, and store these in a list. When the user calls birdseed_instance.random() the last hash will be popped off the hashes list. When the list of hashes is 0, Twitter's API will be called again for the given search query. There's no guarantee though that tweets coming back are new and were not previously hashed and popped off. Ideally, use a search query with lots of entropy (something short like a single character: 'a', 'e', 'i', 'o', 'u')

When run in non-real (pseudo) mode, birdseed will seed Python's random number generator with the first tweet it finds for the given search query.

The hash algorithm used is SHA224, with an input vector of the text of the tweet, the Twitter handle, and the timestamp.

Requirements

Python 2.7+ or Python 3.3+, pip, and Twitter App credentials

Installation

pip install birdseed

Usage

from __future__ import print_function

import birdseed
query = 'donald trump'
access_key = 'YOUR_ACCESS_KEY'
access_secret = 'YOUR_ACCESS_SECRET'
consumer_key = 'YOUR_CONSUMER_KEY'
consumer_secret = 'YOUR_CONSUMER_SECRET'

t = birdseed.Birdseed(query, access_key, access_secret, consumer_key, consumer_secret)
print(t.random())

Contributing

Pull requests are much appreciated and accepted.

License

Released under the MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].