From: Matthew Vernon Date: Tue, 12 Jul 2016 21:06:08 +0000 (+0100) Subject: Patch from adam to expand quoted tweet (1 level only) X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~matthewv/git?a=commitdiff_plain;h=632390ccdb0fba803e44b341c22c994cfbe5d0ae;p=irc.git Patch from adam to expand quoted tweet (1 level only) --- diff --git a/commands.py b/commands.py index 538de09..cea3a2a 100755 --- a/commands.py +++ b/commands.py @@ -501,8 +501,10 @@ def twitterq(bot,cmd,nick,conn,public,twitapi): stringout = getTweet(urlstring,twitapi) bot.automsg(public, nick, stringout) -def getTweet(urlstring,twitapi): +def getTweet(urlstring,twitapi,inclusion=False): unobfuscate_urls=True + expand_included_tweets=True + parts = string.split(urlstring,'/') tweetID = parts[-1] try: @@ -572,6 +574,10 @@ def getTweet(urlstring,twitapi): else: toReplace = '%s://%s%s' % (rv.scheme, rv.hostname, rv.path) # leave off the final '?' + if expand_included_tweets and not inclusion: + if rv.hostname == 'twitter.com' and re.search(r'status/\d+',rv.path): + quotedtweet = getTweet(toReplace, twitapi, inclusion=True) # inclusion parameter limits recursion. + tweetText += " Q{" + quotedtweet + "}" tweetText = tweetText.replace(url.url, toReplace) tweetText = tweetText.replace(">",">") @@ -585,4 +591,6 @@ def getTweet(urlstring,twitapi): except Exception: terror = sys.exc_info() stringout = "Error: %s" % terror[1].__str__() + if inclusion: + return stringout # don't want to double-encode it, so just pass it on for now and encode later return stringout.encode('UTF-8', 'replace')