Fix en dash handling as well as m4a mimetype.
This commit is contained in:
parent
2e53dbd5f8
commit
d740c98b52
1 changed files with 11 additions and 3 deletions
14
append.py
14
append.py
|
@ -66,7 +66,6 @@ def __append(config, feed, suffix, append_fn):
|
||||||
logging.info('%s is up to date.' % suffix)
|
logging.info('%s is up to date.' % suffix)
|
||||||
return
|
return
|
||||||
|
|
||||||
entry.title.encode('ascii')
|
|
||||||
base_url = 'http://www.archive.org/download/%s' % __archive_slug(entry.title)
|
base_url = 'http://www.archive.org/download/%s' % __archive_slug(entry.title)
|
||||||
filename = '%s%s.xml' % (config['file_prefix'], suffix)
|
filename = '%s%s.xml' % (config['file_prefix'], suffix)
|
||||||
today = datetime.date.today()
|
today = datetime.date.today()
|
||||||
|
@ -106,7 +105,7 @@ def __append_non_itunes(config, entry, output, suffix, base_url):
|
||||||
<enclosure url="%(url)s" length="%(size)s" type="%(mime_type)s"/>
|
<enclosure url="%(url)s" length="%(size)s" type="%(mime_type)s"/>
|
||||||
<guid isPermaLink="false">%(permalink)s</guid>
|
<guid isPermaLink="false">%(permalink)s</guid>
|
||||||
</item>
|
</item>
|
||||||
""" % { 'title': entry.title,
|
""" % { 'title': __title(entry.title),
|
||||||
'link': entry.link,
|
'link': entry.link,
|
||||||
'description': __description(config, entry.content),
|
'description': __description(config, entry.content),
|
||||||
'pubDate' : entry.date,
|
'pubDate' : entry.date,
|
||||||
|
@ -145,7 +144,7 @@ def __append_itunes(config, entry, output, suffix, base_url):
|
||||||
<itunes:explicit>no</itunes:explicit>
|
<itunes:explicit>no</itunes:explicit>
|
||||||
<itunes:duration>%(duration)s</itunes:duration>
|
<itunes:duration>%(duration)s</itunes:duration>
|
||||||
</item>
|
</item>
|
||||||
""" % { 'title': entry.title,
|
""" % { 'title': __title(entry.title),
|
||||||
'link': entry.link,
|
'link': entry.link,
|
||||||
'description': description,
|
'description': description,
|
||||||
'pubDate' : entry.date,
|
'pubDate' : entry.date,
|
||||||
|
@ -178,6 +177,12 @@ def __permalink(title):
|
||||||
return permalink
|
return permalink
|
||||||
|
|
||||||
|
|
||||||
|
def __title(title):
|
||||||
|
fixed = title
|
||||||
|
fixed = re.sub(u'\u2013', '-', fixed)
|
||||||
|
return fixed
|
||||||
|
|
||||||
|
|
||||||
def __description(config, content):
|
def __description(config, content):
|
||||||
"""
|
"""
|
||||||
This function strips out parts of the description used in the main site
|
This function strips out parts of the description used in the main site
|
||||||
|
@ -207,6 +212,8 @@ def __enclosure(config, enclosures, base_url, suffix):
|
||||||
# returned by archive.org for Ogg Vorbis files
|
# returned by archive.org for Ogg Vorbis files
|
||||||
if 'ogg' == suffix:
|
if 'ogg' == suffix:
|
||||||
mime_type = 'audio/ogg'
|
mime_type = 'audio/ogg'
|
||||||
|
elif 'm4a' == suffix:
|
||||||
|
mime_type = 'audio/mp4'
|
||||||
else:
|
else:
|
||||||
mime_type = usock.info().type
|
mime_type = usock.info().type
|
||||||
size = usock.info().get('Content-Length')
|
size = usock.info().get('Content-Length')
|
||||||
|
@ -222,6 +229,7 @@ def __archive_slug(title):
|
||||||
on their description and empirical data from dozens of uploads.
|
on their description and empirical data from dozens of uploads.
|
||||||
"""
|
"""
|
||||||
slug = re.sub('\([^0-9]\)-\([^0-9]\)', '\1\2', title)
|
slug = re.sub('\([^0-9]\)-\([^0-9]\)', '\1\2', title)
|
||||||
|
slug = re.sub(u'\u2013', '-', slug)
|
||||||
slug = re.sub('[^A-Za-z0-9\-\.]', ' ', slug)
|
slug = re.sub('[^A-Za-z0-9\-\.]', ' ', slug)
|
||||||
slug = re.sub(' {2,}', ' ', slug)
|
slug = re.sub(' {2,}', ' ', slug)
|
||||||
tokens = slug.split(' ')
|
tokens = slug.split(' ')
|
||||||
|
|
Loading…
Reference in a new issue