neekkue_set_assets 0.0.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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/neekkue_set_assets.rb +68 -0
  3. metadata +43 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 07e82cb4b627817bcb9f1641ca340087a051b8d9a43915ec538883845c5b0feb
4
+ data.tar.gz: 8e01982d1d785414072bd6988cab774c34581ab3b9b1cf88b5ed9228557cc552
5
+ SHA512:
6
+ metadata.gz: b8c046093e2128dcfda91b3b317002eda1589bebbed3fe979b20d247a5484d6f324a458beade01cb0fe2a6995df60d5f24aac032b6dd6f7ba5bbcb318435a398
7
+ data.tar.gz: c0d78ebcfab2bc5494dd2e233c241a65d52696db366546e83fca8fdaba2ed683cec6a25e95821a688de8cb87e7657bf3bdf529d499d41af3565ce5febca96dbc
@@ -0,0 +1,68 @@
1
+ require 'net/http'
2
+
3
+ def find_first_tag(source, tag)
4
+ st = source.index("<#{tag}") + 2 + tag.length
5
+ ed = source.index("</#{tag}")
6
+ source[st, ed - st]
7
+ end
8
+
9
+ def find_assets(source)
10
+ i = 0
11
+ loop do
12
+ i += 1
13
+ st = source.index('<tr') + 5
14
+ source = source[st, source.length]
15
+ break if i == 3
16
+ end
17
+ ed = source.index('<td style=') - 1
18
+ source = source[1, ed]
19
+
20
+ times = source.split('</').size
21
+ i = 0
22
+ loop do
23
+ i += 1
24
+ st = source.index('<td') + 5
25
+ source = source[st, source.length]
26
+ break if i == times - 1
27
+ end
28
+ ed = source.index('&')
29
+ source[0, ed]
30
+ end
31
+
32
+ def print_company(url)
33
+ uri = URI(url)
34
+ source = Net::HTTP.get(uri)
35
+
36
+ realty_name = find_first_tag(source, 'h3')
37
+ assets = find_assets(source)
38
+ puts "#{realty_name} : #{assets}"
39
+ end
40
+
41
+ def find_first_url(source)
42
+ st = source.index('?') + 1
43
+ ed = source.index('" target=""')
44
+ iden = source[st, ed - st]
45
+ 'https://www.set.or.th/set/companyhighlight.do?'.to_s + iden
46
+ end
47
+
48
+ def remove_top(source, top, bottom)
49
+ st = source.index(top) + top.length
50
+ ed = source.index(bottom) + bottom.length
51
+ source[st, ed - st]
52
+ end
53
+
54
+ def print_all
55
+ uri = URI('https://www.set.or.th/set/commonslookup.do')
56
+ source = Net::HTTP.get(uri)
57
+
58
+ i = 0
59
+ loop do
60
+ i += 1
61
+ source = remove_top(source, '<tr valign="top">', '</table>')
62
+ url = find_first_url(source)
63
+ # puts url
64
+ print_company(url)
65
+ break if i == 67
66
+ end
67
+ end
68
+ print_all
metadata ADDED
@@ -0,0 +1,43 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: neekkue_set_assets
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.0
5
+ platform: ruby
6
+ authors:
7
+ - Nanthakarn Limkool
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2021-02-05 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: print set assets
14
+ email: nanthakarn.l@ku.th
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/neekkue_set_assets.rb
20
+ homepage: https://rubygems.org/gems/neekkue_set_assets
21
+ licenses:
22
+ - MIT
23
+ metadata: {}
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">="
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ requirements: []
39
+ rubygems_version: 3.0.3
40
+ signing_key:
41
+ specification_version: 4
42
+ summary: Neekkue_set_assets!
43
+ test_files: []