monese_csv_downloader 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +4 -2
- data/lib/monese_csv_downloader/cli.rb +2 -1
- data/lib/monese_csv_downloader/version.rb +1 -1
- data/lib/monese_csv_downloader/web_client.rb +9 -3
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6c304bc9d8a0ff6eccdc922ce18889a446b6fd067efceb0ee45ae540e730b765
|
4
|
+
data.tar.gz: 48128be9ce625de36870011808f0a97a54c0ea8b459973598d7554011f025045
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 772572a64565961f9a0ab3156a2717660e05fbf2995accc1782558985dce15248d5cc0f377ea7d004c97f5d92a1a28e9defae9f815a85a886c0839987c247645
|
7
|
+
data.tar.gz: ff99dd19aa2c3ff014cef1fb174fdf0c969290ff1c4684d4b8746d8e9c83a9cdce1dca5eec08cd362ee8161208e65bfa52b1843f7683c63c49b0a0c5eafe9ebf
|
data/Gemfile.lock
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
monese_csv_downloader (0.1.
|
4
|
+
monese_csv_downloader (0.1.6)
|
5
5
|
thor (~> 1.1)
|
6
6
|
watir (~> 6.19)
|
7
7
|
webdrivers (~> 4.5.0)
|
@@ -10,8 +10,10 @@ GEM
|
|
10
10
|
remote: https://rubygems.org/
|
11
11
|
specs:
|
12
12
|
childprocess (3.0.0)
|
13
|
+
mini_portile2 (2.5.1)
|
13
14
|
minitest (5.14.4)
|
14
|
-
nokogiri (1.11.
|
15
|
+
nokogiri (1.11.5)
|
16
|
+
mini_portile2 (~> 2.5.0)
|
15
17
|
racc (~> 1.4)
|
16
18
|
racc (1.5.2)
|
17
19
|
rake (10.5.0)
|
@@ -10,9 +10,10 @@ module MoneseCsvDownloader
|
|
10
10
|
desc "download FILE", "Downloads an account statement to FILE"
|
11
11
|
method_option :phone_number, desc: "Phone number for Monese account", required: true
|
12
12
|
method_option :password, desc: "Password for Monese account", required: true
|
13
|
+
method_option :account_type, desc: "Account type: joint/personal", default: "personal"
|
13
14
|
def download(file)
|
14
15
|
puts "downloading to #{file}"
|
15
|
-
contents = MoneseCsvDownloader::WebClient.new(options
|
16
|
+
contents = MoneseCsvDownloader::WebClient.new(options[:phone_number], options[:password]).download(options[:account_type].to_sym)
|
16
17
|
File.write(file, contents)
|
17
18
|
end
|
18
19
|
end
|
@@ -56,7 +56,8 @@ module MoneseCsvDownloader
|
|
56
56
|
Watir::Browser.new :firefox, options: { profile: profile }
|
57
57
|
end
|
58
58
|
|
59
|
-
|
59
|
+
# account_type: :personal, or :joint
|
60
|
+
def download(account_type)
|
60
61
|
# Login
|
61
62
|
self.browser.goto "https://web.monese.com/"
|
62
63
|
self.browser.text_field(data_testid: "login-input").send_keys @monese_account_phone_number[4..-1]
|
@@ -64,8 +65,13 @@ module MoneseCsvDownloader
|
|
64
65
|
self.browser.text_field(data_testid: "input-password").send_keys @monese_account_password
|
65
66
|
self.browser.button(data_testid: "form-submit").click
|
66
67
|
|
67
|
-
|
68
|
-
|
68
|
+
if account_type.eql?(:joint)
|
69
|
+
self.browser.a(data_testid: /account-link-\d-MONESE_JOINT/).click
|
70
|
+
elsif account_type.eql?(:personal)
|
71
|
+
self.browser.a(data_testid: /account-link-\d-PRIVATE/).click
|
72
|
+
else
|
73
|
+
raise ArgumentError, "Invalid account_type: #{account_type}"
|
74
|
+
end
|
69
75
|
|
70
76
|
self.browser.button(data_testid: "download-statement-button").click
|
71
77
|
self.browser.div(class: /DownloadModal-module__InputWrapper/, index: 1).click
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: monese_csv_downloader
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Paul Kuruvilla
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-05-
|
11
|
+
date: 2021-05-20 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|