当前位置: 首页>>代码示例>>Python>>正文


Python SubElement.attrib['restricted']方法代码示例

本文整理汇总了Python中xml.etree.ElementTree.SubElement.attrib['restricted']方法的典型用法代码示例。如果您正苦于以下问题:Python SubElement.attrib['restricted']方法的具体用法?Python SubElement.attrib['restricted']怎么用?Python SubElement.attrib['restricted']使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在xml.etree.ElementTree.SubElement的用法示例。


在下文中一共展示了SubElement.attrib['restricted']方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: Browse

# 需要导入模块: from xml.etree.ElementTree import SubElement [as 别名]
# 或者: from xml.etree.ElementTree.SubElement import attrib['restricted'] [as 别名]
 def Browse(self, request, objectID, browseFlag, filter, startingIndex, requestedCount, sortCriteria):
     # determine the host:port of content
     host = request.headers.getHeader('host').split(':',1)[0]
     port = CoreHttpConfig.HTTP_PORT
     # break up the objectID into segments.  objectIDs have the following form:
     # 0/<artist>/<album>/<song>
     segments = objectID.split('/')
     if len(segments) < 1 or segments[0] != '0':
         raise UPNPError(701, "ObjectID %i is invalid" % objectID)
     # generate the DIDL envelope
     didl = Element("DIDL-Lite")
     didl.attrib["xmlns"] = "urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/"
     didl.attrib["xmlns:upnp"] = "urn:schemas-upnp-org:metadata-1-0/upnp/"
     didl.attrib["xmlns:dc"] = "http://purl.org/dc/elements/1.1/"
     # browse the metadata of one specific item
     if browseFlag == 'BrowseMetadata':
         if len(segments) == 1:
             container = SubElement(didl, 'container')
             container.attrib['id'] = objectID
             container.attrib['parentID'] = '-1'
             container.attrib['restricted'] = '1'
             container.attrib['childCount'] = '2'
             SubElement(container, 'dc:title').text = 'Media on Higgins'
             SubElement(container, 'upnp:class').text = 'object.container.storageFolder'
         elif len(segments) > 1:
             if segments[1] == 'music':
                 if len(segments) == 2:
                     container = SubElement(didl, 'container')
                     container.attrib['id'] = objectID
                     container.attrib['parentID'] = '0'
                     container.attrib['restricted'] = '1'
                     container.attrib['childCount'] = str(len(Artist.objects.all()))
                     SubElement(container, 'dc:title').text = 'Music'
                     SubElement(container, 'upnp:class').text = 'object.container.storageFolder'
                 elif len(segments) == 3:
                     artist = Artist.objects.get(id=int(segments[2]))
                     container = SubElement(didl, 'container')
                     container.attrib['id'] = objectID
                     container.attrib['parentID'] = '/'.join(segments[:1])
                     container.attrib['restricted'] = '1'
                     container.attrib['childCount'] = str(len(Album.objects.filter(artist=artist)))
                     SubElement(container, 'dc:title').text = str(artist.name)
                     SubElement(container, 'upnp:class').text = 'object.container.person.musicArtist'
                 elif len(segments) == 4:
                     album = Album.objects.get(id=int(segments[3]), artist=int(segments[2]))
                     container = SubElement(didl, 'container')
                     container.attrib['id'] = objectID
                     container.attrib['parentID'] = '/'.join(segments[:1])
                     container.attrib['restricted'] = '1'
                     container.attrib['childCount'] = str(len(Song.objects.filter(album=album)))
                     SubElement(container, 'dc:title').text = str(album.name)
                     SubElement(container, 'upnp:class').text = 'object.container.album.musicAlbum'
             if segments[1] == 'playlists':
                 if len(segments) == 2:
                     container = SubElement(didl, 'container')
                     container.attrib['id'] = objectID
                     container.attrib['parentID'] = '0'
                     container.attrib['restricted'] = '1'
                     container.attrib['childCount'] = str(len(Playlist.objects.all()))
                     SubElement(container, 'dc:title').text = 'Playlists'
                     SubElement(container, 'upnp:class').text = 'object.container.storageFolder'
                 elif len(segments) == 3:
                     playlist = Playlist.objects.get(id=int(segments[2]))
                     container = SubElement(didl, 'container')
                     container.attrib['id'] = objectID
                     container.attrib['parentID'] = '/'.join(segments[:1])
                     container.attrib['restricted'] = '1'
                     container.attrib['childCount'] = str(len(playlist))
                     SubElement(container, 'dc:title').text = str(playlist.name)
                     SubElement(container, 'upnp:class').text = 'object.container.playlistContainer'
         total_matches = 1
         number_returned = 1
     elif browseFlag == 'BrowseDirectChildren':
         def getMatches(startingIndex, requestedCount, qset):
             # don't return more than 100 items
             total_matches = len(qset)
             if requestedCount > 100 or requestedCount == 0:
                 requestedCount = 100
             if startingIndex >= total_matches:
                 raise UPNPError(402, "startingIndex %i is out of range" % startingIndex)
             if startingIndex + requestedCount > total_matches:
                 requestedCount = total_matches - startingIndex
             matches = qset[startingIndex:startingIndex + requestedCount]
             number_returned = len(matches)
             retval = (matches, total_matches, number_returned)
             logger.log_debug("getMatches: %s" % str(retval))
             return retval
         # determine the number of matches
         if len(segments) == 1:
             container = SubElement(didl, "container")
             container.attrib["id"] = '0/music'
             container.attrib["parentID"] = '0'
             container.attrib["restricted"] = "1"
             container.attrib['childCount'] = str(len(Album.objects.all()))
             SubElement(container, "upnp:class").text = "object.container.storageFolder"
             SubElement(container, "dc:title").text = 'Music'
             container = SubElement(didl, "container")
             container.attrib["id"] = '0/playlists'
             container.attrib["parentID"] = '0'
             container.attrib["restricted"] = "1"
#.........这里部分代码省略.........
开发者ID:msfrank,项目名称:Higgins,代码行数:103,代码来源:content_directory.py


注:本文中的xml.etree.ElementTree.SubElement.attrib['restricted']方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。