diff options
| author | 2019-05-27 14:52:08 +0100 | |
|---|---|---|
| committer | 2019-05-27 14:52:08 +0100 | |
| commit | 76b268e60e5274bed38659fe0cfd723172cc0218 (patch) | |
| tree | 716346363bb43af84b8d60fe7849d3ee1d7d2f58 /modules/tweets/format.py | |
| parent | set `changed = True` when we pop a module with no dependencies left (diff) | |
| signature | ||
Switch to using tweepy for tweets module
Diffstat (limited to 'modules/tweets/format.py')
| -rw-r--r-- | modules/tweets/format.py | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/modules/tweets/format.py b/modules/tweets/format.py new file mode 100644 index 00000000..c41fde17 --- /dev/null +++ b/modules/tweets/format.py @@ -0,0 +1,35 @@ +import datetime, html, time +from src import utils + +def _timestamp(dt): + seconds_since = time.time()-dt.timestamp() + since, unit = utils.time_unit(seconds_since) + return "%s %s ago" % (since, unit) + +def _tweet(exports, tweet): + linked_id = tweet.id + username = tweet.user.screen_name + + verified = "" + if tweet.user.verified: + verified = " %s" % utils.irc.color("✓", utils.consts.LIGHTBLUE) + + tweet_link = "https://twitter.com/%s/status/%s" % (username, + linked_id) + + short_url = exports.get_one("shortlink")(tweet_link) + short_url = " - %s" % short_url if short_url else "" + created_at = _timestamp(tweet.created_at) + + # having to use hasattr here is nasty. + if hasattr(tweet, "retweeted_status"): + original_username = tweet.retweeted_status.user.screen_name + original_text = tweet.retweeted_status.text + original_timestamp = _timestamp(tweet.retweeted_status.created_at) + return "(@%s%s (%s) retweeted @%s (%s)) %s%s" % (username, verified, + created_at, original_username, original_timestamp, + html.unescape(original_text), short_url) + else: + return "(@%s%s, %s) %s%s" % (username, verified, created_at, + html.unescape(tweet.text), short_url) + |
