Set the 'extractor_key' field in the info_dict

It's the string returned by the class method 'ie_key', which allows to retrieve the extractor with 'get_info_extractor'
pull/1710/merge
Jaime Marquínez Ferrándiz 2013-11-03 12:14:44 +01:00
parent 9103bbc5cd
commit be97abc247
2 changed files with 5 additions and 2 deletions

View File

@ -149,7 +149,7 @@ def generator(test_case):
for key in ('id', 'url', 'title', 'ext'):
self.assertTrue(key in info_dict.keys() and info_dict[key])
# Check for mandatory fields that are automatically set by YoutubeDL
for key in ['webpage_url', 'extractor']:
for key in ['webpage_url', 'extractor', 'extractor_key']:
self.assertTrue(info_dict.get(key), u'Missing field: %s' % key)
finally:
try_rm_tcs_files()

View File

@ -357,7 +357,8 @@ class YoutubeDL(object):
self.add_extra_info(ie_result,
{
'extractor': ie.IE_NAME,
'webpage_url': url
'webpage_url': url,
'extractor_key': ie.ie_key(),
})
return self.process_ie_result(ie_result, download, extra_info)
except ExtractorError as de: # An error we somewhat expected
@ -421,6 +422,7 @@ class YoutubeDL(object):
'playlist_index': i + playliststart,
'extractor': ie_result['extractor'],
'webpage_url': ie_result['webpage_url'],
'extractor_key': ie_result['extractor_key'],
}
entry_result = self.process_ie_result(entry,
download=download,
@ -434,6 +436,7 @@ class YoutubeDL(object):
{
'extractor': ie_result['extractor'],
'webpage_url': ie_result['webpage_url'],
'extractor_key': ie_result['extractor_key'],
})
return r
ie_result['entries'] = [