Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Zahra Rajabi
tweepy
Commits
7281dd61
Commit
7281dd61
authored
Jul 05, 2009
by
Josh Roesslein
Browse files
Added some api endpoints to user model.
parent
8951f603
Changes
4
Hide whitespace changes
Inline
Side-by-side
api.py
View file @
7281dd61
...
...
@@ -17,6 +17,9 @@ class API(object):
self
.
secure
=
secure
self
.
classes
=
classes
if
username
:
self
.
me
=
self
.
get_user
(
screen_name
=
username
)
"""Get public timeline"""
public_timeline
=
bind_api
(
path
=
'/statuses/public_timeline.json'
,
...
...
binder.py
View file @
7281dd61
...
...
@@ -45,7 +45,7 @@ def bind_api(path, parser, allowed_param=None, method='GET', require_auth=False)
raise
TweepError
(
parse_error
(
resp
.
read
()))
# Pass returned body into parser and return parser output
out
=
parser
(
resp
.
read
(),
api
.
classes
)
out
=
parser
(
resp
.
read
(),
api
)
# close connection and return data
conn
.
close
()
...
...
models.py
View file @
7281dd61
...
...
@@ -4,4 +4,11 @@ class Status(object):
class
User
(
object
):
pass
def
timeline
(
self
,
**
kargs
):
return
self
.
_api
.
user_timeline
(
**
kargs
)
def
mentions
(
self
,
**
kargs
):
return
self
.
_api
.
mentions
(
**
kargs
)
def
friends
(
self
,
**
kargs
):
return
self
.
_api
.
friends
(
id
=
self
.
id
,
**
kargs
)
def
followers
(
self
,
**
kargs
):
return
self
.
_api
.
followers
(
id
=
self
.
id
,
**
kargs
)
parsers.py
View file @
7281dd61
...
...
@@ -13,48 +13,50 @@ def _parse_datetime(str):
return
datetime
.
strptime
(
str
,
'%a %b %d %H:%M:%S +0000 %Y'
)
def
_parse_user
(
obj
,
classes
):
def
_parse_user
(
obj
,
api
):
user
=
classes
[
'user'
]()
user
=
api
.
classes
[
'user'
]()
user
.
_api
=
api
for
k
,
v
in
obj
.
items
():
if
k
==
'created_at'
:
setattr
(
user
,
k
,
_parse_datetime
(
v
))
elif
k
==
'status'
:
setattr
(
user
,
k
,
_parse_status
(
v
,
classes
))
setattr
(
user
,
k
,
_parse_status
(
v
,
api
))
else
:
setattr
(
user
,
k
,
v
)
return
user
def
parse_user
(
data
,
classes
):
def
parse_user
(
data
,
api
):
return
_parse_user
(
json
.
loads
(
data
),
classes
)
return
_parse_user
(
json
.
loads
(
data
),
api
)
def
parse_users
(
data
,
classes
):
def
parse_users
(
data
,
api
):
users
=
[]
for
obj
in
json
.
loads
(
data
):
users
.
append
(
_parse_user
(
obj
,
classes
))
users
.
append
(
_parse_user
(
obj
,
api
))
return
users
def
_parse_status
(
obj
,
classes
):
def
_parse_status
(
obj
,
api
):
status
=
classes
[
'status'
]()
status
=
api
.
classes
[
'status'
]()
status
.
_api
=
api
for
k
,
v
in
obj
.
items
():
if
k
==
'user'
:
setattr
(
status
,
k
,
_parse_user
(
v
,
classes
))
setattr
(
status
,
k
,
_parse_user
(
v
,
api
))
elif
k
==
'created_at'
:
setattr
(
status
,
k
,
_parse_datetime
(
v
))
else
:
setattr
(
status
,
k
,
v
)
return
status
def
parse_status
(
data
,
classes
):
def
parse_status
(
data
,
api
):
return
_parse_status
(
json
.
loads
(
data
),
classes
)
return
_parse_status
(
json
.
loads
(
data
),
api
)
def
parse_statuses
(
data
,
classes
):
def
parse_statuses
(
data
,
api
):
statuses
=
[]
for
obj
in
json
.
loads
(
data
):
statuses
.
append
(
_parse_status
(
obj
,
classes
))
statuses
.
append
(
_parse_status
(
obj
,
api
))
return
statuses
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment