Skip to content

Commit 23bbda6

Browse files
author
api.jhartmann
committed
Added method for subscribing to a yt:queryString as well as relevant classes
and updated the docs.
1 parent f5ab921 commit 23bbda6

5 files changed

Lines changed: 197 additions & 31 deletions

File tree

pydocs/gdata.youtube.html

Lines changed: 55 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,7 @@
5858
</font></dt><dt><font face="helvetica, arial"><a href="gdata.youtube.html#Occupation">Occupation</a>
5959
</font></dt><dt><font face="helvetica, arial"><a href="gdata.youtube.html#Position">Position</a>
6060
</font></dt><dt><font face="helvetica, arial"><a href="gdata.youtube.html#Private">Private</a>
61+
</font></dt><dt><font face="helvetica, arial"><a href="gdata.youtube.html#QueryString">QueryString</a>
6162
</font></dt><dt><font face="helvetica, arial"><a href="gdata.youtube.html#Racy">Racy</a>
6263
</font></dt><dt><font face="helvetica, arial"><a href="gdata.youtube.html#Rating">Rating</a>
6364
</font></dt><dt><font face="helvetica, arial"><a href="gdata.youtube.html#Recorded">Recorded</a>
@@ -907,6 +908,53 @@
907908

908909
<dl><dt><strong>__weakref__</strong> = &lt;attribute '__weakref__' of 'ExtensionContainer' objects&gt;<dd><tt>list&nbsp;of&nbsp;weak&nbsp;references&nbsp;to&nbsp;the&nbsp;object&nbsp;(if&nbsp;defined)</tt></dl>
909910

911+
</td></tr></table> <p>
912+
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
913+
<tr bgcolor="#ffc8d8">
914+
<td colspan=3 valign=bottom>&nbsp;<br>
915+
<font color="#000000" face="helvetica, arial"><a name="QueryString">class <strong>QueryString</strong></a>(<a href="atom.html#AtomBase">atom.AtomBase</a>)</font></td></tr>
916+
917+
<tr bgcolor="#ffc8d8"><td rowspan=2><tt>&nbsp;&nbsp;&nbsp;</tt></td>
918+
<td colspan=2><tt>The&nbsp;YouTube&nbsp;<a href="#QueryString">QueryString</a>&nbsp;element<br>&nbsp;</tt></td></tr>
919+
<tr><td>&nbsp;</td>
920+
<td width="100%"><dl><dt>Method resolution order:</dt>
921+
<dd><a href="gdata.youtube.html#QueryString">QueryString</a></dd>
922+
<dd><a href="atom.html#AtomBase">atom.AtomBase</a></dd>
923+
<dd><a href="atom.html#ExtensionContainer">atom.ExtensionContainer</a></dd>
924+
<dd><a href="__builtin__.html#object">__builtin__.object</a></dd>
925+
</dl>
926+
<hr>
927+
Methods inherited from <a href="atom.html#AtomBase">atom.AtomBase</a>:<br>
928+
<dl><dt><a name="QueryString-ToString"><strong>ToString</strong></a>(self, string_encoding<font color="#909090">='UTF-8'</font>)</dt><dd><tt>Converts&nbsp;the&nbsp;Atom&nbsp;object&nbsp;to&nbsp;a&nbsp;string&nbsp;containing&nbsp;XML.</tt></dd></dl>
929+
930+
<dl><dt><a name="QueryString-__init__"><strong>__init__</strong></a>(self, extension_elements<font color="#909090">=None</font>, extension_attributes<font color="#909090">=None</font>, text<font color="#909090">=None</font>)</dt></dl>
931+
932+
<dl><dt><a name="QueryString-__str__"><strong>__str__</strong></a>(self)</dt></dl>
933+
934+
<hr>
935+
Methods inherited from <a href="atom.html#ExtensionContainer">atom.ExtensionContainer</a>:<br>
936+
<dl><dt><a name="QueryString-FindExtensions"><strong>FindExtensions</strong></a>(self, tag<font color="#909090">=None</font>, namespace<font color="#909090">=None</font>)</dt><dd><tt>Searches&nbsp;extension&nbsp;elements&nbsp;for&nbsp;child&nbsp;nodes&nbsp;with&nbsp;the&nbsp;desired&nbsp;name.<br>
937+
&nbsp;<br>
938+
Returns&nbsp;a&nbsp;list&nbsp;of&nbsp;extension&nbsp;elements&nbsp;within&nbsp;this&nbsp;object&nbsp;whose&nbsp;tag<br>
939+
and/or&nbsp;namespace&nbsp;match&nbsp;those&nbsp;passed&nbsp;in.&nbsp;To&nbsp;find&nbsp;all&nbsp;extensions&nbsp;in<br>
940+
a&nbsp;particular&nbsp;namespace,&nbsp;specify&nbsp;the&nbsp;namespace&nbsp;but&nbsp;not&nbsp;the&nbsp;tag&nbsp;name.<br>
941+
If&nbsp;you&nbsp;specify&nbsp;only&nbsp;the&nbsp;tag,&nbsp;the&nbsp;result&nbsp;list&nbsp;may&nbsp;contain&nbsp;extension<br>
942+
elements&nbsp;in&nbsp;multiple&nbsp;namespaces.<br>
943+
&nbsp;<br>
944+
Args:<br>
945+
&nbsp;&nbsp;tag:&nbsp;str&nbsp;(optional)&nbsp;The&nbsp;desired&nbsp;tag<br>
946+
&nbsp;&nbsp;namespace:&nbsp;str&nbsp;(optional)&nbsp;The&nbsp;desired&nbsp;namespace<br>
947+
&nbsp;<br>
948+
Returns:<br>
949+
&nbsp;&nbsp;A&nbsp;list&nbsp;of&nbsp;elements&nbsp;whose&nbsp;tag&nbsp;and/or&nbsp;namespace&nbsp;match&nbsp;the&nbsp;parameters<br>
950+
&nbsp;&nbsp;values</tt></dd></dl>
951+
952+
<hr>
953+
Data and other attributes inherited from <a href="atom.html#ExtensionContainer">atom.ExtensionContainer</a>:<br>
954+
<dl><dt><strong>__dict__</strong> = &lt;dictproxy object&gt;<dd><tt>dictionary&nbsp;for&nbsp;instance&nbsp;variables&nbsp;(if&nbsp;defined)</tt></dl>
955+
956+
<dl><dt><strong>__weakref__</strong> = &lt;attribute '__weakref__' of 'ExtensionContainer' objects&gt;<dd><tt>list&nbsp;of&nbsp;weak&nbsp;references&nbsp;to&nbsp;the&nbsp;object&nbsp;(if&nbsp;defined)</tt></dl>
957+
910958
</td></tr></table> <p>
911959
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
912960
<tr bgcolor="#ffc8d8">
@@ -2014,7 +2062,12 @@
20142062
</dl>
20152063
<hr>
20162064
Methods defined here:<br>
2017-
<dl><dt><a name="YouTubeSubscriptionEntry-__init__"><strong>__init__</strong></a>(self, author<font color="#909090">=None</font>, category<font color="#909090">=None</font>, content<font color="#909090">=None</font>, atom_id<font color="#909090">=None</font>, link<font color="#909090">=None</font>, published<font color="#909090">=None</font>, title<font color="#909090">=None</font>, updated<font color="#909090">=None</font>, username<font color="#909090">=None</font>, feed_link<font color="#909090">=None</font>, extension_elements<font color="#909090">=None</font>, extension_attributes<font color="#909090">=None</font>)</dt></dl>
2065+
<dl><dt><a name="YouTubeSubscriptionEntry-GetSubscriptionType"><strong>GetSubscriptionType</strong></a>(self)</dt><dd><tt>Retrieve&nbsp;the&nbsp;type&nbsp;of&nbsp;this&nbsp;subscription.<br>
2066+
&nbsp;<br>
2067+
Returns:<br>
2068+
&nbsp;&nbsp;A&nbsp;string&nbsp;that&nbsp;is&nbsp;either&nbsp;'channel,&nbsp;'query'&nbsp;or&nbsp;'favorites'</tt></dd></dl>
2069+
2070+
<dl><dt><a name="YouTubeSubscriptionEntry-__init__"><strong>__init__</strong></a>(self, author<font color="#909090">=None</font>, category<font color="#909090">=None</font>, content<font color="#909090">=None</font>, atom_id<font color="#909090">=None</font>, link<font color="#909090">=None</font>, published<font color="#909090">=None</font>, title<font color="#909090">=None</font>, updated<font color="#909090">=None</font>, username<font color="#909090">=None</font>, query_string<font color="#909090">=None</font>, feed_link<font color="#909090">=None</font>, extension_elements<font color="#909090">=None</font>, extension_attributes<font color="#909090">=None</font>)</dt></dl>
20182071

20192072
<hr>
20202073
Methods inherited from <a href="gdata.html#GDataEntry">gdata.GDataEntry</a>:<br>
@@ -3116,6 +3169,7 @@
31163169
<td width="100%"><strong>YOUTUBE_DEVELOPER_TAG_SCHEME</strong> = 'http://gdata.youtube.com/schemas/2007/developertags.cat'<br>
31173170
<strong>YOUTUBE_FORMAT</strong> = '{http://gdata.youtube.com/schemas/2007}format'<br>
31183171
<strong>YOUTUBE_NAMESPACE</strong> = 'http://gdata.youtube.com/schemas/2007'<br>
3172+
<strong>YOUTUBE_SUBSCRIPTION_TYPE_SCHEME</strong> = 'http://gdata.youtube.com/schemas/2007/subscriptiontypes.cat'<br>
31193173
<strong>__author__</strong> = 'api.stephaniel@gmail.com (Stephanie Liu), api.jhartmann@gmail.com (Jochen Hartmann)'</td></tr></table><p>
31203174
<table width="100%" cellspacing=0 cellpadding=2 border=0 summary="section">
31213175
<tr bgcolor="#7799ee">

pydocs/gdata.youtube.service.html

Lines changed: 26 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -470,26 +470,43 @@
470470
Raises:<br>
471471
&nbsp;&nbsp;<a href="#YouTubeError">YouTubeError</a>:&nbsp;rating_value&nbsp;must&nbsp;be&nbsp;between&nbsp;1&nbsp;and&nbsp;5&nbsp;in&nbsp;<a href="#YouTubeService-AddRating">AddRating</a>().</tt></dd></dl>
472472

473-
<dl><dt><a name="YouTubeService-AddSubscriptionToChannel"><strong>AddSubscriptionToChannel</strong></a>(self, username)</dt><dd><tt>Add&nbsp;a&nbsp;new&nbsp;channel&nbsp;subscription&nbsp;to&nbsp;the&nbsp;currently&nbsp;authenticated&nbsp;users<br>
473+
<dl><dt><a name="YouTubeService-AddSubscriptionToChannel"><strong>AddSubscriptionToChannel</strong></a>(self, username_to_subscribe_to, my_username<font color="#909090">='default'</font>)</dt><dd><tt>Add&nbsp;a&nbsp;new&nbsp;channel&nbsp;subscription&nbsp;to&nbsp;the&nbsp;currently&nbsp;authenticated&nbsp;users<br>
474474
account.<br>
475475
&nbsp;<br>
476476
Needs&nbsp;authentication.<br>
477477
&nbsp;<br>
478478
Args:<br>
479-
&nbsp;&nbsp;username:&nbsp;A&nbsp;string&nbsp;representing&nbsp;the&nbsp;username&nbsp;of&nbsp;the&nbsp;channel&nbsp;to<br>
480-
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;which&nbsp;we&nbsp;want&nbsp;to&nbsp;subscribe&nbsp;to.<br>
479+
&nbsp;&nbsp;username_to_subscribe_to:&nbsp;A&nbsp;string&nbsp;representing&nbsp;the&nbsp;username&nbsp;of&nbsp;the&nbsp;<br>
480+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;channel&nbsp;to&nbsp;which&nbsp;we&nbsp;want&nbsp;to&nbsp;subscribe&nbsp;to.<br>
481+
&nbsp;&nbsp;my_username:&nbsp;An&nbsp;optional&nbsp;string&nbsp;representing&nbsp;the&nbsp;name&nbsp;of&nbsp;the&nbsp;user&nbsp;which<br>
482+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;we&nbsp;want&nbsp;to&nbsp;subscribe.&nbsp;Defaults&nbsp;to&nbsp;currently&nbsp;authenticated&nbsp;user.<br>
481483
&nbsp;<br>
482484
Returns:<br>
483485
&nbsp;&nbsp;A&nbsp;new&nbsp;YouTubeSubscriptionEntry&nbsp;if&nbsp;successfully&nbsp;posted.</tt></dd></dl>
484486

485-
<dl><dt><a name="YouTubeService-AddSubscriptionToFavorites"><strong>AddSubscriptionToFavorites</strong></a>(self, username)</dt><dd><tt>Add&nbsp;a&nbsp;new&nbsp;subscription&nbsp;to&nbsp;a&nbsp;users&nbsp;favorites&nbsp;to&nbsp;the&nbsp;currently<br>
487+
<dl><dt><a name="YouTubeService-AddSubscriptionToFavorites"><strong>AddSubscriptionToFavorites</strong></a>(self, username, my_username<font color="#909090">='default'</font>)</dt><dd><tt>Add&nbsp;a&nbsp;new&nbsp;subscription&nbsp;to&nbsp;a&nbsp;users&nbsp;favorites&nbsp;to&nbsp;the&nbsp;currently<br>
486488
authenticated&nbsp;user's&nbsp;account.<br>
487489
&nbsp;<br>
488490
Needs&nbsp;authentication<br>
489491
&nbsp;<br>
490492
Args:<br>
491493
&nbsp;&nbsp;username:&nbsp;A&nbsp;string&nbsp;representing&nbsp;the&nbsp;username&nbsp;of&nbsp;the&nbsp;user's&nbsp;favorite&nbsp;feed<br>
492494
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;to&nbsp;subscribe&nbsp;to.<br>
495+
&nbsp;&nbsp;my_username:&nbsp;An&nbsp;optional&nbsp;string&nbsp;representing&nbsp;the&nbsp;username&nbsp;of&nbsp;the&nbsp;user<br>
496+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that&nbsp;is&nbsp;to&nbsp;be&nbsp;subscribed.&nbsp;Defaults&nbsp;to&nbsp;currently&nbsp;authenticated&nbsp;user.<br>
497+
&nbsp;<br>
498+
Returns:<br>
499+
&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;new&nbsp;YouTubeSubscriptionEntry&nbsp;if&nbsp;successful.</tt></dd></dl>
500+
501+
<dl><dt><a name="YouTubeService-AddSubscriptionToQuery"><strong>AddSubscriptionToQuery</strong></a>(self, query, my_username<font color="#909090">='default'</font>)</dt><dd><tt>Add&nbsp;a&nbsp;new&nbsp;subscription&nbsp;to&nbsp;a&nbsp;specific&nbsp;keyword&nbsp;query&nbsp;to&nbsp;the&nbsp;currently<br>
502+
authenticated&nbsp;user's&nbsp;account.<br>
503+
&nbsp;<br>
504+
Needs&nbsp;authentication<br>
505+
&nbsp;<br>
506+
Args:<br>
507+
&nbsp;&nbsp;query:&nbsp;A&nbsp;string&nbsp;representing&nbsp;the&nbsp;keyword&nbsp;query&nbsp;to&nbsp;subscribe&nbsp;to.<br>
508+
&nbsp;&nbsp;my_username:&nbsp;An&nbsp;optional&nbsp;string&nbsp;representing&nbsp;the&nbsp;username&nbsp;of&nbsp;the&nbsp;user<br>
509+
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;that&nbsp;is&nbsp;to&nbsp;be&nbsp;subscribed.&nbsp;Defaults&nbsp;to&nbsp;currently&nbsp;authenticated&nbsp;user.<br>
493510
&nbsp;<br>
494511
Returns:<br>
495512
&nbsp;&nbsp;&nbsp;&nbsp;A&nbsp;new&nbsp;YouTubeSubscriptionEntry&nbsp;if&nbsp;successful.</tt></dd></dl>
@@ -792,11 +809,7 @@
792809
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;feed&nbsp;is&nbsp;to&nbsp;be&nbsp;retrieved.&nbsp;Defaults&nbsp;to&nbsp;the&nbsp;currently&nbsp;authenticted&nbsp;user.<br>
793810
&nbsp;<br>
794811
Returns:<br>
795-
&nbsp;&nbsp;A&nbsp;YouTubeVideoSubscriptionFeed&nbsp;if&nbsp;successfully&nbsp;retrieved.<br>
796-
&nbsp;<br>
797-
Raises:<br>
798-
&nbsp;&nbsp;<a href="#YouTubeError">YouTubeError</a>:&nbsp;You&nbsp;must&nbsp;provide&nbsp;at&nbsp;least&nbsp;a&nbsp;uri&nbsp;or&nbsp;a&nbsp;username&nbsp;to&nbsp;the<br>
799-
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<a href="#YouTubeService-GetYouTubeSubscriptionFeed">GetYouTubeSubscriptionFeed</a>()&nbsp;method.</tt></dd></dl>
812+
&nbsp;&nbsp;A&nbsp;YouTubeVideoSubscriptionFeed&nbsp;if&nbsp;successfully&nbsp;retrieved.</tt></dd></dl>
800813

801814
<dl><dt><a name="YouTubeService-GetYouTubeUserEntry"><strong>GetYouTubeUserEntry</strong></a>(self, uri<font color="#909090">=None</font>, username<font color="#909090">=None</font>)</dt><dd><tt>Retrieve&nbsp;a&nbsp;YouTubeUserEntry.<br>
802815
&nbsp;<br>
@@ -1887,7 +1900,7 @@
18871900
<tr><td bgcolor="#55aa55"><tt>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</tt></td><td>&nbsp;</td>
18881901
<td width="100%"><strong>UNKOWN_ERROR</strong> = 1000<br>
18891902
<strong>YOUTUBE_BAD_REQUEST</strong> = 400<br>
1890-
<strong>YOUTUBE_COMPLAINT_CATEGORY_SCHEME</strong> = 'http://gdata.youtube.com/schemas/2007/complaint-reasons.cat'<br>
1903+
<strong>YOUTUBE_COMPLAINT_CATEGORY_SCHEME</strong> = 'http://gdata.youtube.com/schemas/complaint-reasons.cat'<br>
18911904
<strong>YOUTUBE_COMPLAINT_CATEGORY_TERMS</strong> = ('PORN', 'VIOLENCE', 'HATE', 'DANGEROUS', 'RIGHTS', 'SPAM')<br>
18921905
<strong>YOUTUBE_CONFLICT</strong> = 409<br>
18931906
<strong>YOUTUBE_CONTACT_CATEGORY</strong> = ('Friends', 'Family')<br>
@@ -1902,7 +1915,8 @@
19021915
<strong>YOUTUBE_QUERY_VALID_ORDERBY_PARAMETERS</strong> = ('updated', 'viewCount', 'rating', 'relevance')<br>
19031916
<strong>YOUTUBE_QUERY_VALID_RACY_PARAMETERS</strong> = ('include', 'exclude')<br>
19041917
<strong>YOUTUBE_QUERY_VALID_TIME_PARAMETERS</strong> = ('today', 'this_week', 'this_month', 'all_time')<br>
1905-
<strong>YOUTUBE_RATING_LINK_REL</strong> = 'http://gdata.youtube.com/schemas/2007#video.ratings'<br>
1918+
<strong>YOUTUBE_RATING_LINK_REL</strong> = 'http://gdata.youtube.com/schemas#video.ratings'<br>
1919+
<strong>YOUTUBE_SCHEMA</strong> = 'http://gdata.youtube.com/schemas'<br>
19061920
<strong>YOUTUBE_SERVER</strong> = 'gdata.youtube.com'<br>
19071921
<strong>YOUTUBE_SERVICE</strong> = 'youtube'<br>
19081922
<strong>YOUTUBE_STANDARDFEEDS</strong> = ('most_recent', 'recently_featured', 'top_rated', 'most_viewed', 'watch_on_mobile')<br>
@@ -1916,6 +1930,7 @@
19161930
<strong>YOUTUBE_STANDARD_TOP_FAVORITES_URI</strong> = 'http://gdata.youtube.com/feeds/api/standardfeeds/top_favorites'<br>
19171931
<strong>YOUTUBE_STANDARD_TOP_RATED_URI</strong> = 'http://gdata.youtube.com/feeds/api/standardfeeds/top_rated'<br>
19181932
<strong>YOUTUBE_STANDARD_WATCH_ON_MOBILE_URI</strong> = 'http://gdata.youtube.com/feeds/api/standardfeeds/watch_on_mobile'<br>
1933+
<strong>YOUTUBE_SUBSCRIPTION_CATEGORY_SCHEME</strong> = 'http://gdata.youtube.com/schemas/subscriptiontypes.cat'<br>
19191934
<strong>YOUTUBE_SUPPORTED_UPLOAD_TYPES</strong> = ('mov', 'avi', 'wmv', 'mpg', 'quicktime')<br>
19201935
<strong>YOUTUBE_UPLOAD_TOKEN_URI</strong> = 'http://gdata.youtube.com/action/GetUploadToken'<br>
19211936
<strong>YOUTUBE_UPLOAD_URI</strong> = 'http://uploads.gdata.youtube.com/feeds/api/users'<br>

src/gdata/youtube/__init__.py

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,19 @@
2626
YOUTUBE_FORMAT = '{http://gdata.youtube.com/schemas/2007}format'
2727
YOUTUBE_DEVELOPER_TAG_SCHEME = '%s/%s' % (YOUTUBE_NAMESPACE,
2828
'developertags.cat')
29+
YOUTUBE_SUBSCRIPTION_TYPE_SCHEME = '%s/%s' % (YOUTUBE_NAMESPACE,
30+
'subscriptiontypes.cat')
2931

3032
class Username(atom.AtomBase):
3133
"""The YouTube Username element"""
3234
_tag = 'username'
3335
_namespace = YOUTUBE_NAMESPACE
3436

37+
class QueryString(atom.AtomBase):
38+
"""The YouTube QueryString element"""
39+
_tag = 'queryString'
40+
_namespace = YOUTUBE_NAMESPACE
41+
3542

3643
class FirstName(atom.AtomBase):
3744
"""The YouTube FirstName element"""
@@ -279,22 +286,36 @@ class YouTubeSubscriptionEntry(gdata.GDataEntry):
279286
_children = gdata.GDataEntry._children.copy()
280287
_attributes = gdata.GDataEntry._attributes.copy()
281288
_children['{%s}username' % YOUTUBE_NAMESPACE] = ('username', Username)
289+
_children['{%s}queryString' % YOUTUBE_NAMESPACE] = (
290+
'query_string', QueryString)
282291
_children['{%s}feedLink' % gdata.GDATA_NAMESPACE] = ('feed_link',
283292
[gdata.FeedLink])
284293

285294
def __init__(self, author=None, category=None, content=None,
286295
atom_id=None, link=None, published=None, title=None,
287-
updated=None, username=None, feed_link=None,
296+
updated=None, username=None, query_string=None, feed_link=None,
288297
extension_elements=None, extension_attributes=None):
289298

290299
gdata.GDataEntry.__init__(self, author=author, category=category,
291300
content=content, atom_id=atom_id, link=link,
292301
published=published, title=title, updated=updated)
293302

294303
self.username = username
304+
self.query_string = query_string
295305
self.feed_link = feed_link
296306

297307

308+
def GetSubscriptionType(self):
309+
"""Retrieve the type of this subscription.
310+
311+
Returns:
312+
A string that is either 'channel, 'query' or 'favorites'
313+
"""
314+
for category in self.category:
315+
if category.scheme == YOUTUBE_SUBSCRIPTION_TYPE_SCHEME:
316+
return category.term
317+
318+
298319
class YouTubeVideoResponseEntry(gdata.GDataEntry):
299320
"""Represents a video response. """
300321
_tag = gdata.GDataEntry._tag

0 commit comments

Comments
 (0)