Módulo satcfe.util

satcfe.util.as_ascii(value)

Converte a sequência unicode para str ou apenas retorna o argumento.

>>> type(as_ascii('testando'))
<type 'str'>
>>> type(as_ascii(u'bênção'))
<type 'str'>
>>> as_ascii(u'b\u00EAn\u00E7\u00E3o')
'bencao'
satcfe.util.as_clean_unicode(value)

Resulta na conversão do argumento para unicode e a subsequente remoção dos espaços em branco das bordas.

>>> as_clean_unicode('abc')
u'abc'
>>> as_clean_unicode('abc\n')
u'abc'
>>> as_clean_unicode(' \tabc \t \n   ')
u'abc'
satcfe.util.as_date(value)

Converte uma sequência string para um objeto datetime.date. Os espaços em branco das bordas da sequência serão removidos antes da conversão.

>>> import datetime
>>> as_date('20150709')
datetime.date(2015, 7, 9)
>>> as_date('20150709\n')
datetime.date(2015, 7, 9)
>>> as_date('  \n')
Traceback (most recent call last):
 ...
ValueError: ...
satcfe.util.as_date_or_none(value)

Converte uma sequência string para um objeto datetime.date ou resulta em None se a sequência estiver vazia após terem sido removidos espaços em branco das bordas.

>>> import datetime
>>> as_date_or_none('20150709')
datetime.date(2015, 7, 9)
>>> as_date_or_none('20150709\n')
datetime.date(2015, 7, 9)
>>> assert as_date_or_none('  \n') is None
satcfe.util.as_datetime(value)

Converte uma sequência string para um objeto datetime.datetime. Os espaços em branco das bordas da sequência serão removidos antes da conversão.

>>> import datetime
>>> as_datetime('20150709143944')
datetime.datetime(2015, 7, 9, 14, 39, 44)
>>> as_datetime('20150709143944\n')
datetime.datetime(2015, 7, 9, 14, 39, 44)
>>> as_datetime(' \t \n ')
Traceback (most recent call last):
 ...
ValueError: ...
satcfe.util.as_datetime_or_none(value)

Converte uma sequência string para um objeto datetime.datetime ou resulta em None se a sequência estiver vazia após terem sido removidos espaços em branco das bordas.

>>> import datetime
>>> as_datetime_or_none('20150709143944')
datetime.datetime(2015, 7, 9, 14, 39, 44)
>>> as_datetime_or_none('20150709143944\n')
datetime.datetime(2015, 7, 9, 14, 39, 44)
>>> assert as_datetime_or_none(' \t \n ') is None
satcfe.util.normalizar_ip(ip)

Normaliza uma sequência string que contenha um endereço IP.

Normalmente os equipamentos SAT, seguindo a ER SAT, resultam endereços IP com um aspecto similar a 010.000.000.001, visualmente desagradável e difícil de ler. Esta função normaliza o endereço acima como 10.0.0.1.

>>> normalizar_ip('010.000.000.001')
'10.0.0.1'
>>> normalizar_ip('10.0.0.1')
'10.0.0.1'
>>> normalizar_ip('')
Traceback (most recent call last):
 ...
ValueError: invalid literal for int() with base 10: ''