From 604fbd11191aafed321e24b0e6748d9e26e80ed5 Mon Sep 17 00:00:00 2001 From: Bezleputh Date: Thu, 23 Oct 2014 14:07:27 +0200 Subject: [PATCH] [hybride] fix: site changed --- modules/hybride/pages.py | 34 ++++++---------------------------- modules/hybride/test.py | 3 ++- 2 files changed, 8 insertions(+), 29 deletions(-) diff --git a/modules/hybride/pages.py b/modules/hybride/pages.py index 8d06c5e1..b55c9d24 100644 --- a/modules/hybride/pages.py +++ b/modules/hybride/pages.py @@ -25,7 +25,8 @@ import re from weboob.browser.pages import HTMLPage from weboob.browser.elements import ItemElement, SkipItem, ListElement, method -from weboob.browser.filters.standard import Filter, CleanText, Env +from weboob.browser.filters.standard import Filter, CleanText, Env, Format, BrowserURL +from weboob.browser.filters.html import CleanHTML from weboob.browser.filters.html import Link @@ -45,23 +46,6 @@ class CombineDate(Filter): return datetime.combine(format_date(text), time.max) -class Description(Filter): - def filter(self, el): - description = '' - - description_intro = el[0].xpath("div[@class='itemIntroText']/table/tbody/tr/td") - - if description_intro and len(description_intro) > 0: - description += u'%s' % description_intro[0].text_content() - - description_content = el[0].xpath("div[@class='itemFullText']/table/tbody/tr/td") - - if description_content and len(description_content) > 0: - description += u'%s' % description_content[0].text_content() - - return u'%s' % description - - class ProgramPage(HTMLPage): @method @@ -109,19 +93,13 @@ class EventPage(HTMLPage): class get_event(ItemElement): klass = HybrideCalendarEvent - def parse(self, el): - if self.obj.id: - event = self.obj - event.url = self.page.url - event.description = Description('//div[@class="itemView"]/div[@class="itemBody"]')(self) - raise SkipItem() - - self.env['url'] = self.page.url - obj_id = Env('_id') base = '//div[@class="itemView"]/div[@class="itemHeader"]' obj_start_date = Date(CleanText('%s/span[@class="itemDateCreated"]' % base)) obj_end_date = CombineDate(CleanText('%s/span[@class="itemDateCreated"]' % base)) obj_summary = CleanText('%s/h2[@class="itemTitle"]' % base) obj_url = Env('url') - obj_description = Description('//div[@class="itemView"]/div[@class="itemBody"]') + obj_description = Format('%s\n%s', + CleanHTML('//div[@class="itemIntroText"]'), + CleanHTML('//div[@class="itemFullText"]')) + obj_url = BrowserURL('event_page', _id=Env('_id')) diff --git a/modules/hybride/test.py b/modules/hybride/test.py index e7593b08..d2623abe 100644 --- a/modules/hybride/test.py +++ b/modules/hybride/test.py @@ -26,7 +26,8 @@ class HybrideTest(BackendTest): MODULE = 'hybride' def test_hybride_list(self): - if datetime.now() > datetime(datetime.now().year, 6, 30) and datetime.now() < datetime(datetime.now().year, 9, 15): + if datetime.now() > datetime(datetime.now().year, 6, 30) and\ + datetime.now() < datetime(datetime.now().year, 9, 15): raise SkipTest("Fermeture estivale") l = list(self.backend.list_events(datetime.now())) assert len(l)