Rename the filter Date to Datetime. Introduce Date
This commit is contained in:
parent
e1944d95f3
commit
e289fc6b8f
3 changed files with 13 additions and 6 deletions
|
|
@ -19,7 +19,7 @@
|
|||
|
||||
from weboob.tools.browser import BrowserBanned
|
||||
from weboob.tools.browser2.page import HTMLPage, LoggedPage, method, ListElement, ItemElement
|
||||
from weboob.tools.browser2.filters import Env, CleanText, CleanDecimal, Field, Attr, Time, Date, Link, Format
|
||||
from weboob.tools.browser2.filters import Env, CleanText, CleanDecimal, Field, Attr, Time, DateTime, Link, Format
|
||||
from weboob.capabilities.bill import Subscription, Detail
|
||||
from datetime import datetime
|
||||
|
||||
|
|
@ -81,7 +81,7 @@ class HistoryPage(LoggedPage, HTMLPage):
|
|||
klass = Detail
|
||||
|
||||
obj_id = None
|
||||
obj_datetime = Date(CleanText('td[1] | td[2]'))
|
||||
obj_datetime = DateTime(CleanText('td[1] | td[2]'))
|
||||
obj_price = CleanDecimal('td[7]', replace_dots=False, default=0)
|
||||
obj_currency = u'EUR'
|
||||
obj_label = Format(u"%s from %s to %s - %s",
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@
|
|||
# along with weboob. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
from weboob.tools.browser2.page import HTMLPage, method, ListElement, ItemElement
|
||||
from weboob.tools.browser2.filters import Env, CleanText, Regexp, Field, Date, Map, Attr
|
||||
from weboob.tools.browser2.filters import Env, CleanText, Regexp, Field, DateTime, Map, Attr
|
||||
from weboob.capabilities.gauge import Gauge, GaugeMeasure, GaugeSensor
|
||||
from weboob.capabilities.base import NotAvailable, NotLoaded
|
||||
|
||||
|
|
@ -87,7 +87,7 @@ class ListPage(HTMLPage):
|
|||
def obj_sensors(self):
|
||||
sensors = []
|
||||
|
||||
lastdate = Date(Regexp(Env('datetime'), r'(\d+)\.(\d+)\.(\d+) (\d+):(\d+)', r'\3-\2-\1 \4:\5', default=NotAvailable))(self)
|
||||
lastdate = DateTime(Regexp(Env('datetime'), r'(\d+)\.(\d+)\.(\d+) (\d+):(\d+)', r'\3-\2-\1 \4:\5', default=NotAvailable))(self)
|
||||
forecast = Map(Env('forecast'), self.forecasts, default=NotAvailable)(self)
|
||||
alarm = Map(Env('alarm'), self.alarmlevel, default=u'')(self)
|
||||
|
||||
|
|
@ -109,7 +109,7 @@ class HistoryPage(HTMLPage):
|
|||
def condition(self):
|
||||
return self.verif.match(self.el[0].text_content())
|
||||
|
||||
obj_date = Date(Regexp(CleanText('.'), r'(\d+)\.(\d+)\.(\d+) (\d+):(\d+)', r'\3-\2-\1 \4:\5'))
|
||||
obj_date = DateTime(Regexp(CleanText('.'), r'(\d+)\.(\d+)\.(\d+) (\d+):(\d+)', r'\3-\2-\1 \4:\5'))
|
||||
sensor_types = [u'Level', u'Flow']
|
||||
|
||||
def obj_level(self):
|
||||
|
|
|
|||
|
|
@ -268,13 +268,20 @@ class Map(Filter):
|
|||
raise KeyError('Unable to handle %r' % txt)
|
||||
|
||||
|
||||
class Date(Filter):
|
||||
class DateTime(Filter):
|
||||
def filter(self, txt):
|
||||
if empty(txt):
|
||||
return txt
|
||||
return parse_date(txt)
|
||||
|
||||
|
||||
class Date(DateTime):
|
||||
def filter(self, txt):
|
||||
datetime = super(Date, self).filter(txt)
|
||||
if datetime is not None:
|
||||
return datetime.date
|
||||
|
||||
|
||||
class Time(Filter):
|
||||
klass = datetime.time
|
||||
regexp = re.compile(ur'(?P<hh>\d+):?(?P<mm>\d+)(:(?P<ss>\d+))?')
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue