This repository has been archived on 2026-10-23. You can view files and clone it. You cannot open issues or pull requests or push a commit.
Files
tannleichen/tweetorator.py
2016-09-09 15:42:27 +02:00

64 lines
1.7 KiB
Python
Executable File

#!/usr/bin/env python
#coding: utf-8
import ConfigParser
import sys
import twitter
import logging
import tldb
import re
"""
THE NINJA IS STRONG WITH THIS ONE
TODO: FIX EVERYTHING
"""
__version__ = "0.1"
_api = None
initialized = False
def init():
global _api
cfg = ConfigParser.RawConfigParser()
cfg.read("tweetorator.cfg")
consumer_key = cfg.get("twitter", "consumer_key")
consumer_secret = cfg.get("twitter", "consumer_secret")
access_token_key = cfg.get("twitter", "access_token_key")
access_token_secret = cfg.get("twitter", "access_token_secret")
_api = twitter.Api(consumer_key = consumer_key,
consumer_secret = consumer_secret,
access_token_key = access_token_key,
access_token_secret = access_token_secret)
logging.debug("VerifyCredentials: %s" % _api.VerifyCredentials())
tldb.loadCfg('tldb.cfg')
def post_confession(text):
global _api
# Return if text only contains whitespace
if re.search(r'\S', text) is None:
logging.info("Confession only containing whitespace. Abort")
return
if not initialized:
init()
if len(text) > 140:
logging.info("Adding confession longer than 140")
try:
tldb.addConfession(text)
except:
logging.error("%s, 1, text was >>%s<<" % (sys.exc_info()[0], text))
pass
else:
logging.info("Adding confession shorter than 140")
try:
status = _api.PostUpdate(text)
tldb.addConfession(text, status.AsJsonString())
except:
logging.error("%s, 2, text was >>%s<<" % (sys.exc_info()[0], text))
pass