本文整理汇总了Python中xml.etree.ElementTree.SubElement.attrib['isPermaLink']方法的典型用法代码示例。如果您正苦于以下问题:Python SubElement.attrib['isPermaLink']方法的具体用法?Python SubElement.attrib['isPermaLink']怎么用?Python SubElement.attrib['isPermaLink']使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类xml.etree.ElementTree.SubElement
的用法示例。
在下文中一共展示了SubElement.attrib['isPermaLink']方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: do_it
# 需要导入模块: from xml.etree.ElementTree import SubElement [as 别名]
# 或者: from xml.etree.ElementTree.SubElement import attrib['isPermaLink'] [as 别名]
def do_it():
# get all upload playlists of subbed channels
playlists = get_playlists(get_channel_for_user(my_channel))
# get the last 5 items from every playlist
allitems = []
for p in playlists:
allitems.extend(get_playlist_items(p))
# the playlist items don't contain the correct published date, so now
# we have to fetch every video in batches of 50.
allvids = []
for chunk in chunks(allitems, 50):
allvids.extend(get_real_videos(chunk))
# sort them by date
sortedvids = sorted(allvids, key=lambda k: k['snippet']['publishedAt'], reverse=True)
# build the rss
rss = Element('rss')
rss.attrib['version'] = '2.0'
channel = SubElement(rss, 'channel')
title = SubElement(channel, 'title')
title.text = 'Youtube subscriptions for ' + my_channel
link = SubElement(channel, 'link')
link.text = 'http://www.youtube.com/'
# add the most recent 1
for v in sortedvids[:1]:
item = SubElement(channel, 'item')
id = SubElement(item, 'id')
id.text = v['id']
title = SubElement(item, 'title')
title.text = v['snippet']['title']
link = SubElement(item, 'link')
link.text = 'http://youtube.com/watch?v=' + v['id']
author = SubElement(item, 'author')
author.text = v['snippet']['channelTitle']
guid = SubElement(item, 'guid')
guid.attrib['isPermaLink'] = 'true'
guid.text = 'http://youtube.com/watch?v=' + v['id']
pubDate = SubElement(item, 'pubDate')
pubDate.text = v['snippet']['publishedAt']
description = SubElement(item, 'description')
description.text = v['snippet']['description']
if len(sys.argv) >= 3:
filename = sys.argv[2]
f = open(filename, 'w')
else:
f = sys.stdout
f.write(id.text)
#f.write(tostring(rss).encode('utf-8'))
f.close()
示例2: build_rss
# 需要导入模块: from xml.etree.ElementTree import SubElement [as 别名]
# 或者: from xml.etree.ElementTree.SubElement import attrib['isPermaLink'] [as 别名]
def build_rss(self):
rss = Element('rss')
rss.attrib['version'] = '2.0'
channel = SubElement(rss, 'channel')
title = SubElement(channel, 'title')
title.text = 'Youtube subscriptions for ' + self.USERNAME
link = SubElement(channel, 'link')
link.text = 'http://www.youtube.com/'
all_videos = self.additions + self.raw_videos
if not all_videos:
return False
all_videos = [v for v in all_videos if v['id'] not in self.watched]
i = 0
for v in all_videos:
i+=1
published_date = datetime.strptime(v['snippet']['publishedAt'], "%Y-%m-%dT%H:%M:%S.000Z")
# A maximum of MAX_VIDEOS which are newer than 7 days will be shown
if (datetime.now() - published_date).days > 7 or i > self.MAX_VIDEOS:
break
item = SubElement(channel, 'item')
title = SubElement(item, 'title')
title.text = v['snippet']['title']
link = SubElement(item, 'link')
link.text = 'http://youtube.com/watch?v=' + v['id']
author = SubElement(item, 'author')
author.text = v['snippet']['channelTitle']
guid = SubElement(item, 'guid')
guid.attrib['isPermaLink'] = 'true'
guid.text = 'http://youtube.com/watch?v=' + v['id']
pubDate = SubElement(item, 'pubDate')
pubDate.text = v['snippet']['publishedAt']
#description = SubElement(item, 'description')
#description.text = v['snippet']['description']
xmlstr = minidom.parseString(tostring(rss)).toprettyxml(indent=" ").encode('utf-8')
return '<?xml version="1.0" encoding="UTF-8" ?>\n' + xmlstr
示例3: SubElement
# 需要导入模块: from xml.etree.ElementTree import SubElement [as 别名]
# 或者: from xml.etree.ElementTree.SubElement import attrib['isPermaLink'] [as 别名]
title = SubElement(channel, 'title')
title.text = 'Youtube subscriptions for ' + username
link = SubElement(channel, 'link')
link.text = 'http://www.youtube.com/'
# add the most recent 20
for v in sortedvids[:20]:
item = SubElement(channel, 'item')
title = SubElement(item, 'title')
title.text = v['snippet']['title']
link = SubElement(item, 'link')
link.text = 'http://youtube.com/watch?v=' + v['id']
author = SubElement(item, 'author')
author.text = v['snippet']['channelTitle']
guid = SubElement(item, 'guid')
guid.attrib['isPermaLink'] = 'true'
guid.text = 'http://youtube.com/watch?v=' + v['id']
pubDate = SubElement(item, 'pubDate')
pubDate.text = v['snippet']['publishedAt']
description = SubElement(item, 'description')
description.text = v['snippet']['description']
if len(sys.argv) >= 3:
filename = sys.argv[2]
f = open(filename, 'w')
else:
f = sys.stdout
f.write('<?xml version="1.0" encoding="UTF-8" ?>')
f.write(tostring(rss).encode('utf-8'))
f.close()