class Miser::Driver::BancSabadell
Public Instance Methods
login(nif, pin)
click to toggle source
# File lib/miser/driver/banc_sabadell.rb, line 6 def login(nif, pin) @session.visit('https://www.bancsabadell.com/txbs/ChangeLocale.init.bs?locale=CAS') @session.fill_in("NIF", with: nif) @session.fill_in("pin", with: pin) @session.click_on('Entrar') end
movements(date)
click to toggle source
# File lib/miser/driver/banc_sabadell.rb, line 31 def movements(date) @session.click_on('Saldo y extracto cuentas') @session.fill_in('dateMovFrom.day', with: date.day) @session.fill_in('dateMovFrom.month', with: date.month) @session.fill_in('dateMovFrom.year', with: date.year) @session.fill_in('CUExtractOperationsQuery.paginationRows', with: 100) # select the date period choice @session.find('input[type="radio"][name="r1"][value="2"]').click @session.click_on('Aceptar') parse_movements end
parse_movements()
click to toggle source
# File lib/miser/driver/banc_sabadell.rb, line 15 def parse_movements @session.all('table.sorted > tbody > tr').map do |row| fragment = Nokogiri::HTML::DocumentFragment.parse(row['innerHTML'].strip) amount = fragment.css('td[headers=amount]').attribute('title') date = fragment.css('td[headers=date]').attribute('abbr') purpose = fragment.css('td[headers=purpose]') Movement.new( date: DateTime.strptime(date.value, '%y%m%d%H%M%S'), amount: amount.value.to_f, purpose: purpose.text ) end end