neekkue_set_assets 0.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/lib/neekkue_set_assets.rb +68 -0
- 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: []
|