У меня есть следующий код в python, который прекрасно работает в Thonny:
import re
st='''Notification transactions
Samedi 1 février 2020
Caisse Epargne Particulier
SAMEDI 1 FÉVRIER 2020
My Title
-
2,02 €
Account 2 • Supermarché / Epicerie
Caisse Epargne Particulier
SAMEDI 1 FÉVRIER 2020
My Other Title
-
4 400,00 €
Account 1 • A catégoriser
Caisse Epargne Particulier
SAMEDI 1 FÉVRIER 2020
Title again
-
694,00 €
Account 3 • Restaurants
SAMEDI 1 FÉVRIER 2020
Title title
-
50,00 €'''
stRegex = '([0-9]?[0-9] (?:JANVIER|FÉVRIER|MARS|AVRIL|MAI|JUIN|JUILLET|AOÛT|SEPTEMBRE|OCTOBRE|NOVEMBRE|DÉCEMBRE) 2020)[\n]*([\\w]*.*)[\n]*-[\n]*([0-9]{1,3} ?[0-9]*,[0-9]{2}) €[ ]*[\n]*((?:Account 1|Account 2))'
operations = re.findall(stRegex,st)
return_list = [
{
'date': operation[0],
'title': operation[1],
'amount': operation[2],
'account': operation[3]
}
for operation in operations
]
print (return_list)
Вывод:
[{'date': '1 FÉVRIER 2020', 'title': 'My Title', 'amount': '2,02', 'account': 'Account 2'}, {'date': '1 FÉVRIER 2020', 'title': 'My Other Title', 'amount': '4 400,00', 'account': 'Account 1'}]
У меня нет результатов При попытке в Zapier со следующей настройкой (body_plain приходит из электронного письма). Следующим шагом должно быть заполнение Google Sheet таким количеством новых строк, как «операция» (в моем примере 2 новые строки):
import re
stRegex = '...myRegexLikeAbove...'
operations = re.findall(stRegex, input_data['body_plain'])
return_list = [
{
'date': operation[0],
'title': operation[1],
'amount': operation[2],
'account': operation[3]
}
for operation in operations
]
output = return_list
Я не вижу, что не так. Спасибо за вашу помощь.