diff --git a/modules/radiofrance/pages.py b/modules/radiofrance/pages.py index ef7429a4..3635ab45 100644 --- a/modules/radiofrance/pages.py +++ b/modules/radiofrance/pages.py @@ -73,6 +73,7 @@ class RadioPage(HTMLPage): @method class get_france_culture_podcast_emissions(ListElement): item_xpath = '//li/h3/a' + ignore_duplicate = True class item(ItemElement): klass = Collection @@ -109,6 +110,7 @@ class RadioPage(HTMLPage): @method class get_mouv_podcast_emissions(ListElement): item_xpath = '//div[@class="view-content"]/div' + ignore_duplicate = True class item(ItemElement): klass = Collection @@ -131,6 +133,7 @@ class RadioPage(HTMLPage): @method class get_france_musique_podcast_emissions(ListElement): item_xpath = '//div[@class="liste-emissions"]/ul/li' + ignore_duplicate = True class item(ItemElement): klass = Collection @@ -178,10 +181,14 @@ class JsonPage(JsonPage): @method class get_selection(DictElement): item_xpath = 'diffusions' + ignore_duplicate = True class item(ItemElement): klass = BaseAudio + def condition(self): + return Dict('path_mp3')(self) + obj_id = BaseAudioIdFilter(Format(u'%s.%s', Env('radio_id'), Dict('nid'))) obj_format = u'mp3' obj_title = Format(u'%s : %s', diff --git a/modules/radiofrance/test.py b/modules/radiofrance/test.py index 58e093d3..cd644214 100644 --- a/modules/radiofrance/test.py +++ b/modules/radiofrance/test.py @@ -37,8 +37,8 @@ class RadioFranceTest(BackendTest): self.assertTrue(len(streams) > 0) l_sel = list(self.backend.iter_resources(objs=[BaseAudio], split_path=[name, 'selection'])) - self.assertTrue(len(l_sel) > 0) - self.assertTrue(len(l_sel[0].url) > 0) + if len(l_sel) > 0: + self.assertTrue(len(l_sel[0].url) > 0) l = list(self.backend.iter_resources(objs=[Radio], split_path=['francebleu'])) self.assertTrue(len(l) > 30)