本文整理汇总了Python中firebase.Firebase.patch方法的典型用法代码示例。如果您正苦于以下问题:Python Firebase.patch方法的具体用法?Python Firebase.patch怎么用?Python Firebase.patch使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类firebase.Firebase
的用法示例。
在下文中一共展示了Firebase.patch方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: get_votacoes_senador
# 需要导入模块: from firebase import Firebase [as 别名]
# 或者: from firebase.Firebase import patch [as 别名]
def get_votacoes_senador(codigo, params):
# Salva votações do senador no banco de dados
# !!! Se a matéria foi votada mais de uma vez (em diferentes tramitações), somente um voto é guardado
# |_ isso depende de qual for colocado por último no XML (elaborar rotina para ordenar por data!)
# @params: JSON com as seguintes opções:
# sigla: (opcional) sigla da matéria - retorna apenas as matérias da sigla informada.
# numero: (opcional) número da matéria - retorna apenas as matérias do número informado.
# ano: (opcional) ano da matéria - retorna apenas as matérias do ano informado
# tramitacao: (opcional) (S ou N) - retorna apenas as matérias que estão tramitando (S) ou apenas as que não estão (N). Se não for informado, retorna ambas.
if params == {}: params = {'ano':'2016', 'sigla':'PEC'}
tree = af.votacoes_senador(codigo, params)
votacoes_tree = tree.findall('.//Votacao')
# Inicialização com possíveis valores de votação
votos_dict = {
'Sim' : {},
'Nao' : {},
'PNRV' : {},
'MIS' : {},
'LS' : {},
'LL' : {},
'Outro' : {}
}
for vot in votacoes_tree:
voto = vot.find('.//DescricaoVoto').text
# Testes "frágeis" para adaptar nome das keys, os tipos são somente esses. Primeiro caracter somente para fugir de probs. de codificiação (unicode). Arrumar futuramente!
if voto[:1] == 'S' : voto = 'Sim'
elif voto[:1] == 'N' : voto = 'Nao'
elif voto[:1] == 'M' : voto = 'MIS'
elif voto[:1] == 'P' : voto = 'PNRV'
elif voto[:2] == 'LS' : voto = 'LS'
elif voto[:2] == 'LL' : voto = 'LL'
else: voto = 'Outro'
cod_materia = vot.find('.//CodigoMateria').text
print cod_materia, voto
votos_dict[voto][cod_materia] = {}
votos_dict[voto][cod_materia]['DescricaoVoto'] = vot.find('.//DescricaoVoto').text
votos_dict[voto][cod_materia]['DescricaoVotacao'] = vot.find('.//DescricaoVotacao').text
votos_dict[voto][cod_materia]['DescricaoResultado'] = vot.find('.//DescricaoResultado').text
votos_dict[voto][cod_materia]['AnoMateria'] = vot.find('.//AnoMateria').text
votos_dict[voto][cod_materia]['SiglaSubtipoMateria'] = vot.find('.//SiglaSubtipoMateria').text
# Salva no Firebase (teste com atualização 1 a 1)
for key, val in votos_dict.iteritems():
for k, v in val.iteritems():
url = '/senadores/' + codigo + '/votos/' + key + '/' + k
f = Firebase(FBURL + url)
f.patch(votos_dict[key][k])