+#!/usr/bin/env python
+# encoding: utf-8
"""
USAGE:
def parse_args(args, options):
long_opts = ['help', 'format=', 'refresh', 'oauth=',
- 'refresh-rate=', 'config=', 'length=', 'timestamp',
+ 'refresh-rate=', 'config=', 'length=', 'timestamp',
'datestamp', 'no-ssl']
short_opts = "e:p:f:h?rR:c:l:td"
- opts, extra_args = getopt(args, short_opts, long_opts)
+ opts, extra_args = getopt(args, short_opts, long_opts)
for opt, arg in opts:
if opt in ('-f', '--format'):
return time.strftime("%H:%M:%S ", t)
elif datestamp:
return time.strftime("%Y-%m-%d ", t)
- return ""
+ return ""
class StatusFormatter(object):
def __call__(self, status, options):
def __call__(self, twitter, options):
raise NoSuchActionError("No such action: %s" %(options['action']))
-def printNicely(string):
+def printNicely(string):
if sys.stdout.encoding:
print string.encode(sys.stdout.encoding, 'replace')
else:
# We need to be pointing at search.twitter.com to work, and it is less
# tangly to do it here than in the main()
twitter.domain="search.twitter.com"
- twitter.uri=""
+ twitter.uriparts=()
# We need to bypass the TwitterCall parameter encoding, so we
# don't encode the plus sign, so we have to encode it ourselves
query_string = "+".join(
[quote(term.decode(get_term_encoding()))
for term in options['extra_args']])
- twitter.encoded_args = "q=%s" %(query_string)
- results = twitter.search()['results']
+ results = twitter.search(q=query_string)['results']
f = get_formatter('search', options)
for result in results:
resultStr = f(result, options)
print >> sys.stderr
raise SystemExit(1)
- config_options = loadConfig(
+ config_path = os.path.expanduser(
arg_options.get('config_filename') or OPTIONS.get('config_filename'))
+ config_options = loadConfig(config_path)
# Apply the various options in order, the most important applied last.
# Defaults first, then what's read from config file, then command-line
print >> sys.stderr, "Use 'twitter -h' for help."
return 1
+ oauth_filename = os.path.expanduser(options['oauth_filename'])
+
if (options['action'] == 'authorize'
- or not os.path.exists(options['oauth_filename'])):
+ or not os.path.exists(oauth_filename)):
oauth_dance(
"the Command-Line Tool", CONSUMER_KEY, CONSUMER_SECRET,
options['oauth_filename'])
- oauth_token, oauth_token_secret = read_token_file(options['oauth_filename'])
-
+ oauth_token, oauth_token_secret = read_token_file(oauth_filename)
+
twitter = Twitter(
auth=OAuth(
oauth_token, oauth_token_secret, CONSUMER_KEY, CONSUMER_SECRET),