iegrip 0.0.8 → 0.0.9
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 +4 -4
- data/lib/iegrip/version.rb +1 -1
- data/lib/iegrip.rb +64 -9
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: e91fd4dcf3f4cf53da481257929fb1321eee53cc
|
4
|
+
data.tar.gz: 8803be8bcd4a6851797b656044847c17c4ca6176
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 1fb8fe242cb7830c5b3cb59d6d5ade187152bebcf51a9c0e2a4e92430275bb836fb575a67321e6d6717fb3019bb1a534f133430347415236d1dac56de4fc9f9f
|
7
|
+
data.tar.gz: 359e4dcd2c17b93afa419da88ed3189c1ebb9eb712526c3de6379eeca95121d3e5e1a40f7dc674be5433bdf8323b5ee4e942b94de20ee2b410f7f4457026c223
|
data/lib/iegrip/version.rb
CHANGED
data/lib/iegrip.rb
CHANGED
@@ -21,6 +21,9 @@ module IEgrip
|
|
21
21
|
ver = fs.GetFileVersion(@raw_object.FullName)
|
22
22
|
@majorVersion = ver.split(/\./)[0].to_i
|
23
23
|
@urlDownloadToFile = Win32API.new('urlmon', 'URLDownloadToFileA', %w(l p p l l), 'l')
|
24
|
+
@event = WIN32OLE_EVENT.new(@raw_object,"DWebBrowserEvents2")
|
25
|
+
@downloading = nil
|
26
|
+
setup_event()
|
24
27
|
end
|
25
28
|
|
26
29
|
def version
|
@@ -39,21 +42,69 @@ module IEgrip
|
|
39
42
|
|
40
43
|
COMPLETE_STATE = 4
|
41
44
|
def wait_stable()
|
42
|
-
stable_counter = 0
|
43
45
|
loop do
|
44
|
-
break if
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
end
|
46
|
+
break if (@raw_object.Busy != true) and (@raw_object.ReadyState == COMPLETE_STATE)
|
47
|
+
WIN32OLE_EVENT.message_loop
|
48
|
+
end
|
49
|
+
loop do
|
50
|
+
break unless @downloading
|
51
|
+
WIN32OLE_EVENT.message_loop
|
51
52
|
end
|
52
53
|
end
|
53
54
|
|
54
55
|
def export(href, filename)
|
55
56
|
@urlDownloadToFile.call(0, href, filename, 0, 0)
|
56
57
|
end
|
58
|
+
|
59
|
+
private
|
60
|
+
|
61
|
+
def setup_event()
|
62
|
+
@event.on_event("BeforeNavigate2") {
|
63
|
+
#puts " BeforeNavigate2"
|
64
|
+
@downloading = true
|
65
|
+
}
|
66
|
+
#@event.on_event("CommandStateChange") {
|
67
|
+
# puts " CommandStateChange"
|
68
|
+
#}
|
69
|
+
@event.on_event("DocumentComplete") {|param|
|
70
|
+
# a document is completely loaded and initialized.
|
71
|
+
if param.LocationURL == @raw_object.LocationURL
|
72
|
+
#puts " DocumentComplete. LocationURL match! : #{param.LocationURL}"
|
73
|
+
@downloading = false
|
74
|
+
else
|
75
|
+
#puts " DocumentComplete. "
|
76
|
+
end
|
77
|
+
}
|
78
|
+
#@event.on_event("DownloadBegin") {
|
79
|
+
# # a navigation operation begins.
|
80
|
+
# puts " DownloadBegin. "
|
81
|
+
#}
|
82
|
+
#@event.on_event("DownloadComplete") {
|
83
|
+
# # a navigation operation finishes, is halted, or fails.
|
84
|
+
# puts " Download Complete."
|
85
|
+
#}
|
86
|
+
#@event.on_event("NavigateComplete2") {
|
87
|
+
# # a navigation to a link is completed on a window element or a frameSet element.
|
88
|
+
# puts " NavigateComplete2."
|
89
|
+
#}
|
90
|
+
#@event.on_event("NewProcess") {
|
91
|
+
# puts " NewProcess"
|
92
|
+
#}
|
93
|
+
#@event.on_event("ProgressChange") {
|
94
|
+
# puts " ProgressChange"
|
95
|
+
#}
|
96
|
+
#@event.on_event("PropertyChange") {
|
97
|
+
# puts " PropertyChange"
|
98
|
+
#}
|
99
|
+
#@event.on_event("StatusTextChange") {
|
100
|
+
# puts " StatusTextChange"
|
101
|
+
#}
|
102
|
+
#@event.on_event("UpdatePageStatus") {
|
103
|
+
# puts " UpdatePageStatus"
|
104
|
+
#}
|
105
|
+
|
106
|
+
|
107
|
+
end
|
57
108
|
end
|
58
109
|
|
59
110
|
module ElementParent
|
@@ -171,7 +222,11 @@ module IEgrip
|
|
171
222
|
when "img"
|
172
223
|
inner.push "src='#{tag.src}'"
|
173
224
|
when "input"
|
174
|
-
|
225
|
+
attr_list = []
|
226
|
+
attr_list.push("type='#{tag.Type}'")
|
227
|
+
attr_list.push("name='#{tag.Name}'") if tag.Name != ""
|
228
|
+
attr_list.push("value='#{tag.value}'") if tag.value != ""
|
229
|
+
inner.push attr_list.join(" ")
|
175
230
|
when "form"
|
176
231
|
inner.push "action='#{tag.action}' method='#{tag.Method}'"
|
177
232
|
when "option"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: iegrip
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.9
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- yac4423
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-10-
|
11
|
+
date: 2014-10-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|