neekkue_set_assets 0.0.0

Sign up to get free protection for your applications and to get access to all the features.
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: []