forked from benjmin-r/posterous-python
-
Notifications
You must be signed in to change notification settings - Fork 0
/
posterous-shell
executable file
·35 lines (27 loc) · 982 Bytes
/
posterous-shell
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
#!/usr/bin/env python
from getpass import getpass
from optparse import OptionParser
import posterous
"""Launch an interactive shell ready for Posterous usage
This script is handy for debugging posterous during development
or to just play around with the library.
It imports posterous and creates an authenticated API instance (api)
using the credentials provided.
"""
opt = OptionParser(usage='posterous-shell <username> <password>')
options, args = opt.parse_args()
if len(args) == 1:
username, password = args[0], getpass()
elif len(args) == 2:
username, password = args[0], args[1]
else:
username, password = None, None
local_ns = {'posterous': posterous, 'api': posterous.API(username, password)}
shellbanner = '<Posterous shell>'
try:
import IPython
ipshell = IPython.Shell.IPShell([''], user_ns = local_ns)
ipshell.mainloop(sys_exit=1, banner = shellbanner)
except ImportError:
import code
code.interact(shellbanner, local = local_ns)