SE23 Twitter Bot @se23_tweets


I’ve written a little bot that listens out for mentions of SE23 on Twitter and retweets them.

I’m using this as a coding exercise to learn new technologies. If you’re on Twitter, give the bot a follow and let me know what you think.

Also, if anyone has ideas for this bot, I’m interested to hear.

Thanks :thumbsup:


Filter out low-quality tweets

:white_check_mark: Human curation (retracting RTs) - fiddly, and too late :thumbsdown:

:white_check_mark: Throttle tweets from over-tweeters

:white_check_mark: Follow human-curated list of “tastemaker” tweeters to analyse which accounts / content they like/retweet

:thought_balloon: Identify high quality tweeters via like_rate/follower_count and RT_rate/follower_count

Filter out mentions of SE23 that aren’t about the postcode

:white_check_mark: Use following/followers of user to see if they’re in the clique of relevant local users

:thought_balloon: Use DBPedia (Wikipedia interface for bots) to identify keywords related to Forest Hill / Honor Oak

Filter repetitive social media spamming

:white_check_mark: Manually curated - mute and retract RT - fiddly, and too late :thumbsdown:

:white_check_mark: Identify spam tweets by proportion of hashtags

:thought_balloon: Filter tweets with text matching earlier tweets (from any account)

:thought_balloon: Bayesian filter?

Reduce repetition of the same news

:thought_balloon: Natural language processing to extract semantics and keywords, then compare to previous tweets. See

Filter Obcenities

:white_check_mark: Word blacklist?

:thought_balloon: Bayesian filter?

Filter non-English / non-local tweets

:white_check_mark: Language filter

:thought_balloon: Bayesian filter?

Prevent gaming

:white_check_mark: Human curation (blocking bad actors) - fiddly, and too late :thumbsdown:

:thought_balloon: Whitelist accounts by analysing quality metrics (e.g. average like count per tweet per follower count)? New / spam accounts will have low scores for these metrics.

SE23's Top of the Tweets - Nominations please!

Have followed, will let you know what it comes up with!




Oddly, although I am following the account it isn’t appearing in my timeline, that I can tell. Checking time stamps and trying to see if it’s there. How often does it refresh?


See it now. As you were.


Ah - this could be due to a feature of Twitter.

Twitter will hide retweets of tweets from accounts that you follow. This is because those tweets have already appeared in your timeline. @se23_tweets will be entirely mute for you if you follow the accounts that it is retweeting.

I think it’s retweeted 12 tweets so far today.


That makes sense, Chris, and is actually a useful feature. I don’t want to see things twice.


Keeping my :eyes:’s pealed on this one Chris :ok_hand:


Ahem, sorry folks!

Bad bot! :angry:

(have blocked this account so no more naughty tweets - from them, at least)


Or good depending on your…uh…tastes! :grin:


The bot has picked up a Seattle weather forecast. Wind direction and force = SE23…


Thanks Rachael - I have a similar issue with my @SE4_bot instance - there’s a game called “Sniper Elite 4” that people keep tweeting about (using the hashtag #SE4).

I reckon I can spot these irrelevant tweets using clique analysis.

Gamers around the world talking about “Sniper Elite 4” wouldn’t be likely to follow @BrockleyCentral, for example. But someone local would be more likely.

So I’m going to have the bot assemble Twitter Lists of known-local accounts, and then spider out further from these to enlarge the list.

Then I’ll check the author of each tweet to see how much it intersects with the above list. That will feed into the “score” given to the tweet.


One day I am going to make you explain that to me.


The sinister bot uprising in well in-hand…

I’ve coded some of the ideas on the todo list and the Twitter bots are behaving much better now:

Will be open-sourcing the project sometime in the next few weeks, hoping more programmers will get involved. I’ve used some interesting techniques to make the bot smarter, like using a graph database so it can do clique analysis in real-time.

Once the SE23 bot is performing well enough, I’ll get it to start posting topics into a private area of this forum. We can hand-pick the interesting topics and move them into the main forum.