diff --git a/modules/senscritique/browser.py b/modules/senscritique/browser.py index c96e3b42..4508f959 100644 --- a/modules/senscritique/browser.py +++ b/modules/senscritique/browser.py @@ -18,13 +18,10 @@ # along with weboob. If not, see . from weboob.tools.browser2 import PagesBrowser, URL, Profile, Firefox -from weboob.tools.json import json as simplejson from .calendar import SensCritiquenCalendarEvent from .pages import AjaxPage, EventPage, JsonResumePage -import urllib -import urllib2 import re __all__ = ['SenscritiqueBrowser'] @@ -85,8 +82,9 @@ class SenscritiqueBrowser(PagesBrowser): def set_package_settings(self, package, channels): url = 'http://www.senscritique.com/sc/tv_guides/saveSettings.json' - params = "network=%s" % package - params += ''.join(["&channels%%5B%%5D=%d" % (channel) for channel in channels]) + params = {'network': package} + for channel in channels: + params['channels[]'] = channel self.open(url, data=params) def list_events(self, date_from, date_to=None, package=None, channels=None): @@ -99,7 +97,7 @@ class SenscritiqueBrowser(PagesBrowser): self._setup_session(SensCritiqueAjaxProfile()) while True: self.DATA['page'] = '%d' % page_nb - page = self.ajax_page.open(data=urllib.urlencode(self.DATA)) + page = self.ajax_page.open(data=self.DATA) nb_events = page.count_events() events = page.list_events(date_from=date_from, date_to=date_to) @@ -119,7 +117,7 @@ class SenscritiqueBrowser(PagesBrowser): self._setup_session(SensCritiqueAjaxProfile()) while True: self.DATA['page'] = '%d' % page_nb - page = self.ajax_page.open(data=urllib.urlencode(self.DATA)) + page = self.ajax_page.open(data=self.DATA) event = page.list_events(_id=_id) nb_events = page.count_events() if event or nb_events < self.LIMIT or page >= self.LIMIT_NB_PAGES: @@ -140,9 +138,8 @@ class SenscritiqueBrowser(PagesBrowser): def get_resume(self, _id): self._setup_session(SensCritiqueJsonProfile()) - re_id = re.compile('/(.*)/(.*?).json', re.DOTALL) + re_id = re.compile('^/?(.*)/.*', re.DOTALL) a_id = re_id.search(_id).group(1) - print a_id return self.json_page.go(_id=a_id).get_resume() # return "get resume" diff --git a/modules/senscritique/pages.py b/modules/senscritique/pages.py index 187ff62c..cc1b637f 100644 --- a/modules/senscritique/pages.py +++ b/modules/senscritique/pages.py @@ -18,13 +18,12 @@ # along with weboob. If not, see . from weboob.tools.misc import html2text -from weboob.tools.browser import BasePage from .calendar import SensCritiquenCalendarEvent from datetime import date, datetime, time -from weboob.tools.browser2.page import HTMLPage, method, ItemElement, SkipItem, ListElement, JsonPage -from weboob.tools.browser2.filters import Filter, Link, CleanText, Env, Attr, Regexp +from weboob.tools.browser2.page import HTMLPage, method, ItemElement, ListElement, JsonPage +from weboob.tools.browser2.filters import Filter, Link, CleanText, Regexp __all__ = ['AjaxPage', 'EventPage', 'JsonResumePage'] @@ -178,6 +177,5 @@ class EventPage(HTMLPage): class JsonResumePage(JsonPage): def get_resume(self): - print self.doc if self.doc['json']['success']: return self.doc['json']['data']