threeuk_usage 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 985c0da8ae45bf0a0184e11487ab2167cc8b9dd3
4
+ data.tar.gz: 2f9078c7fe4df65b069a2653a660114229e05b5b
5
+ SHA512:
6
+ metadata.gz: 1c3e58724cfefd504a530f90b024e298cc7d7a177e8f02ba1fa63bccec3cf313a20a831c0579700f3439dd9540672523e8275159896d404ae5fe5a3a3fb279a3
7
+ data.tar.gz: 5d327b390424b036f6ca248d6e2fe6f3a1cf84b20cc84292e08f12fe3e2676164b1b725bbe2dc5fb4dc317d50eebbb264f25b141706d469cf563fa41e61031c4
checksums.yaml.gz.sig ADDED
Binary file
@@ -0,0 +1,34 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ # file: threeuk_usage.rb
4
+
5
+ # description: Web scrapes three.co.uk for the remaining data allowance
6
+ # #webscraper #threeuk #mobilebroadband
7
+
8
+ require 'mechanize'
9
+
10
+
11
+ class ThreeUKUsage
12
+
13
+ attr_reader :expires, :remaining
14
+
15
+ def initialize(url='https://www.three.co.uk/New_My3/' +
16
+ 'Data_allowance?id=My3_DataAllowanceHeading')
17
+
18
+ agent = Mechanize.new
19
+
20
+ page = agent.get url
21
+ page2 = agent.click(page.links[0])
22
+ page3 = agent.click(page2.link_with(text: " Check your data allowance."))
23
+
24
+ cols = page3.css('.balance tbody/tr[2]/td/text()').map {|x| x.to_s.strip}
25
+ @expires = Date.strptime(cols[1][/\d+\/\d+\/\d+$/], "%d/%m/%y")
26
+ @remaining = cols[2].to_i
27
+
28
+ end
29
+
30
+ def to_h()
31
+ {expires: @expires, remaining: @remaining}
32
+ end
33
+
34
+ end
data.tar.gz.sig ADDED
Binary file
metadata ADDED
@@ -0,0 +1,88 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: threeuk_usage
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - James Robertson
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDljCCAn6gAwIBAgIBATANBgkqhkiG9w0BAQUFADBIMRIwEAYDVQQDDAlnZW1t
14
+ YXN0ZXIxHjAcBgoJkiaJk/IsZAEZFg5qYW1lc3JvYmVydHNvbjESMBAGCgmSJomT
15
+ 8ixkARkWAmV1MB4XDTE3MTAwMzEyMDcwNloXDTE4MTAwMzEyMDcwNlowSDESMBAG
16
+ A1UEAwwJZ2VtbWFzdGVyMR4wHAYKCZImiZPyLGQBGRYOamFtZXNyb2JlcnRzb24x
17
+ EjAQBgoJkiaJk/IsZAEZFgJldTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
18
+ ggEBAMoX0jS+Tr+hbCUWhHNOFYBQDjy3sYu4nOXmFTSQsfdsCG007zN3HNC3D1ax
19
+ fjwy+oxAVjCJGAhIc8mm+fRspxuzg2V0inS+HCkQ5zOGVXh9pApP71qQUpaU/xBy
20
+ nRkC+4o0nU+gKoohZZpp1rPMS0lsOnwk0IqMNYVtva2scCTUsLYBmcW4DYjO/195
21
+ DIYJ2/aK1w6QzjC3cWtMyNIu2TRDVRLU52vmrF5A7n28yGoasL3zAo0jkN22Mct5
22
+ hqXzo07yQkUJRiwmA2G4UvVzr2R89+vmDJu8aWWiw9a3cqOQOOOeKfbPBGTc/Ymc
23
+ 5sSGLxJ6hX/aqSGcaR71KLkTR2MCAwEAAaOBijCBhzAJBgNVHRMEAjAAMAsGA1Ud
24
+ DwQEAwIEsDAdBgNVHQ4EFgQU3789YtRiNeiasxeVZMghXTGr9GwwJgYDVR0RBB8w
25
+ HYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1h
26
+ c3RlckBqYW1lc3JvYmVydHNvbi5ldTANBgkqhkiG9w0BAQUFAAOCAQEAu/His9h3
27
+ 1RSZ33SyDqHa7DiGnnDbpm1+tG/DEeBn2G79xo0Nd5JpfVen/TX3ZMkzcgbADarJ
28
+ WJi6AXDLD3eCVQLdVCy8nhlRy9LsypUk1Gp0oOHPrKW3Yi7WE5WbAVrJyeoiQ9x+
29
+ nio80Y39daXhj8Yf0z7U2Hdw573+IITeLNSDOo4Yv5PRXYZBQWwJutzUabeVH7+x
30
+ 3fyBpvTQPbTPia6JUgSjMzxiPseKe9fzZBIfvx6PdwQo9lpRucZiyi+IjHQfKPrq
31
+ nZtDJcHWqL0y1e+Og7E/KnaOR2fzHwDKf+G0/ZHcWvnFn7XqpbW3lxQSskeIT/1o
32
+ cvQG0VRACsGaCg==
33
+ -----END CERTIFICATE-----
34
+ date: 2017-10-03 00:00:00.000000000 Z
35
+ dependencies:
36
+ - !ruby/object:Gem::Dependency
37
+ name: mechanize
38
+ requirement: !ruby/object:Gem::Requirement
39
+ requirements:
40
+ - - "~>"
41
+ - !ruby/object:Gem::Version
42
+ version: '2.7'
43
+ - - ">="
44
+ - !ruby/object:Gem::Version
45
+ version: 2.7.5
46
+ type: :runtime
47
+ prerelease: false
48
+ version_requirements: !ruby/object:Gem::Requirement
49
+ requirements:
50
+ - - "~>"
51
+ - !ruby/object:Gem::Version
52
+ version: '2.7'
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ version: 2.7.5
56
+ description:
57
+ email: james@jamesrobertson.eu
58
+ executables: []
59
+ extensions: []
60
+ extra_rdoc_files: []
61
+ files:
62
+ - lib/threeuk_usage.rb
63
+ homepage: https://github.com/jrobertson/threeuk_usage
64
+ licenses:
65
+ - MIT
66
+ metadata: {}
67
+ post_install_message:
68
+ rdoc_options: []
69
+ require_paths:
70
+ - lib
71
+ required_ruby_version: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ required_rubygems_version: !ruby/object:Gem::Requirement
77
+ requirements:
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: '0'
81
+ requirements: []
82
+ rubyforge_project:
83
+ rubygems_version: 2.6.13
84
+ signing_key:
85
+ specification_version: 4
86
+ summary: 'Web scrapes three.co.uk for the remaining data allowance #webscraper #threeuk
87
+ #mobilebroadband'
88
+ test_files: []
metadata.gz.sig ADDED
@@ -0,0 +1 @@
1
+ F�Y%��Q~����KrG ��w�@6��T�_f�u�>���DLT�pP��{|+d��Y��r��y���7}�6~�X��.� I����aZE��ǵ(�����A:��&�&\W<