rexle 1.5.3 → 1.5.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data.tar.gz.sig +0 -0
- data/lib/rexle.rb +16 -5
- metadata +36 -36
- metadata.gz.sig +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 48ffcbfab5e523417662457d13ac99081ec9257b3c8658943487c981ae9e6963
|
4
|
+
data.tar.gz: a1e01f8147ac5f5ca54a99038d9c5a38d8e149cbfb64546f461fd2e9f80b3a4b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 7ee20461d62db424b3542e10e06bbee810e943a59e3f06297fd71a4cf77addd2a945ac56dc931aad7eedb9633f1afb18d25a77841b3a945bdd1435426e3f9846
|
7
|
+
data.tar.gz: 326c39c15f196b500d82fd2bff225ca3a40e472c77cc51191d8db03766bcaaac11c72560e75ef9d532e4af71370be29b1ccbaee9731fad4e4a742566a6bf8814
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data.tar.gz.sig
CHANGED
Binary file
|
data/lib/rexle.rb
CHANGED
@@ -13,6 +13,10 @@ require 'backtrack-xpath'
|
|
13
13
|
|
14
14
|
# modifications:
|
15
15
|
|
16
|
+
# 30-Jul-2020: minor improvement: #plaintext now unescapes & to &
|
17
|
+
# 11-May-2020: bug fix: Rexle#css now responds correctly to valid selectors
|
18
|
+
# 23-Apr-2020: feature: Added public method *plaintext*.
|
19
|
+
# 04-Feb-2020: minor bug fix: Element A is now defined as a non self-closing tag
|
16
20
|
# 18-Sep-2019: minor bug fix: &apos is now unescaped properly
|
17
21
|
# 09-Jul-2019: minor improvement: A comment tag now has a
|
18
22
|
# new line when pretty printed
|
@@ -100,7 +104,7 @@ module XMLhelper
|
|
100
104
|
|
101
105
|
tag = x.name + (a.empty? ? '' : ' ' + a.join(' '))
|
102
106
|
|
103
|
-
non_self_closing_tags = %w(script textarea iframe div object)
|
107
|
+
non_self_closing_tags = %w(script textarea iframe div object a)
|
104
108
|
|
105
109
|
if (x.children and x.children.length > 0 \
|
106
110
|
and not x.children.is_an_empty_string?) or \
|
@@ -206,6 +210,7 @@ class Rexle
|
|
206
210
|
def initialize(x=nil, rexle: self, debug: false)
|
207
211
|
|
208
212
|
@rexle, @debug = rexle, debug
|
213
|
+
$debug = @debug
|
209
214
|
|
210
215
|
puts 'inside Rexle'.debug if debug
|
211
216
|
|
@@ -254,9 +259,7 @@ class Rexle
|
|
254
259
|
a = selector.split(',').flat_map do |x|
|
255
260
|
@doc.root.xpath RexleCSS.new(x).to_xpath
|
256
261
|
end
|
257
|
-
|
258
|
-
a.shift if self.kind_of? Rexle
|
259
|
-
|
262
|
+
|
260
263
|
return a
|
261
264
|
end
|
262
265
|
|
@@ -647,6 +650,7 @@ class Rexle
|
|
647
650
|
attr_search = format_condition(condition) if condition \
|
648
651
|
and condition.length > 0
|
649
652
|
|
653
|
+
puts ('1. attr_search: ' + attr_search.inspect).debug if $debug
|
650
654
|
#@log.debug 'attr_search2 : ' + attr_search.inspect
|
651
655
|
attr_search2 = xpath_value[/^\[(.*)\]$/,1]
|
652
656
|
|
@@ -711,6 +715,7 @@ class Rexle
|
|
711
715
|
end
|
712
716
|
|
713
717
|
elsif element_name.nil?
|
718
|
+
puts ('attr_search: ' + attr_search.inspect).debug if $debug
|
714
719
|
return eval attr_search
|
715
720
|
else
|
716
721
|
|
@@ -996,6 +1001,12 @@ class Rexle
|
|
996
1001
|
def insert_before(node) insert(node) end
|
997
1002
|
def last(a) a.last end
|
998
1003
|
def map(&blk) self.children.map(&blk) end
|
1004
|
+
|
1005
|
+
def plaintext()
|
1006
|
+
xml().gsub(/<\/?[^>]+>/,'').gsub('&','&').gsub(' ',' ')\
|
1007
|
+
.gsub(/\n\s+/,' ')
|
1008
|
+
end
|
1009
|
+
|
999
1010
|
def root() self end
|
1000
1011
|
|
1001
1012
|
def text(s='')
|
@@ -1043,7 +1054,7 @@ class Rexle
|
|
1043
1054
|
|
1044
1055
|
val = Value.new(raw_s.to_s.clone)
|
1045
1056
|
|
1046
|
-
escape_chars = %w(& & < < > >).each_slice(2).to_a
|
1057
|
+
escape_chars = %w(& & ' ' < < > >).each_slice(2).to_a
|
1047
1058
|
escape_chars.each{|x| val.gsub!(*x)}
|
1048
1059
|
|
1049
1060
|
t = val
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rexle
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.5.
|
4
|
+
version: 1.5.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- James Robertson
|
@@ -11,31 +11,31 @@ cert_chain:
|
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
13
|
MIIEXjCCAsagAwIBAgIBATANBgkqhkiG9w0BAQsFADAsMSowKAYDVQQDDCFnZW1t
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
14
|
+
YXN0ZXIvREM9amFtZXNyb2JlcnRzb24vREM9ZXUwHhcNMjAwMjA0MTMxMjIzWhcN
|
15
|
+
MjEwMjAzMTMxMjIzWjAsMSowKAYDVQQDDCFnZW1tYXN0ZXIvREM9amFtZXNyb2Jl
|
16
|
+
cnRzb24vREM9ZXUwggGiMA0GCSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQCyVLqC
|
17
|
+
gVJ+P/zFnjtoyxfgcrc5US5+G7mDdNq/Q2GDm2zIZjVAnUHLZCcKLBlwMY0Vusqq
|
18
|
+
sNzbiSHqVqaXtrFq2jivmbJsKUxJMTIuErXQnpfVsmapQsYJ7U8+byHgFRf8ysTc
|
19
|
+
Op90xKUkroJdO+Ls0SMcFXUGqybH5d4Dxhb+3f/rAThPC8V9EWRWF/SlosXvE/sw
|
20
|
+
VzsGkxLQug3xJkSvN2rQQZi4RgOP37jgeEToeLTIu43npNF6H9nSV/lxUriqPyva
|
21
|
+
OMQYIpK+1SS42J9rSD1/1q1FscsKT2koP9Uf4zHzIeuiQ4wmAMpqYS80eNzaeAEx
|
22
|
+
p3Z4HLBHseWKNWSDrgW0YvuYBAEMcq+XdBMT66n+xKL5GUlsXptrFQ4QP6oOxK4K
|
23
|
+
UZXN94qwi54m+EIexo5ADKtrwRuQl+X9pRpOmFNJAny8vWIz6U1SZs2nBysPLj2g
|
24
|
+
lnKLGetPlgBVoKAPZoFu//CYQKIO+erQoAGRoA05TGrBAq2cNkNFvQJ9XM0CAwEA
|
25
|
+
AaOBijCBhzAJBgNVHRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUCCDebAbe
|
26
|
+
pZaniHSTxRjAZLUsoQswJgYDVR0RBB8wHYEbZ2VtbWFzdGVyQGphbWVzcm9iZXJ0
|
27
27
|
c29uLmV1MCYGA1UdEgQfMB2BG2dlbW1hc3RlckBqYW1lc3JvYmVydHNvbi5ldTAN
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
28
|
+
BgkqhkiG9w0BAQsFAAOCAYEAEdNcc2nDj8v6FdY75tULXii+F0m1pnfxri+wtd/1
|
29
|
+
wnRqNqmaKQGwAUhx4qLhs8MbGU5H4xe18Hmf7n6P++HSCKaFDwE3mo38vwnPmPr8
|
30
|
+
J+4+CWaB+avp9/wztZS3oQ0k/w9bN4b1RUk18z4rpG9Y8KH3v7L+b4rAzzBhs60S
|
31
|
+
Q2+963e3C7PFkFODn1vfGMRmBK2nuekE6RdzzxzRuUBwKHMggxPsHRQzaz8cy4fB
|
32
|
+
UWC8eX0y59rd/gA0WunPXgpuV24SHBtIqTLk76Z1Oz3P27Hwx2JPhURtzc3bNfSg
|
33
|
+
gvwYrdF1dTOwourN6uqQLksl7AjcCVUV+6hyoa5Fo9HcfURnlPdjVFax/KIQj3lA
|
34
|
+
X0bOYG6opdA3I0zyDHGx+mC9QuhM6oKYq3fu7i8RsVsihVImOovRYVagGbULBLDZ
|
35
|
+
yK32Ci6By/qMCdJdE8pLLZhHuZGIkoYJK7EN7OKPznwuXRCOq7jb44HAIDi4RZST
|
36
|
+
J+lqIOqNxqRJkYpuYSZr+tyd
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date:
|
38
|
+
date: 2020-07-30 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: c32
|
@@ -63,40 +63,40 @@ dependencies:
|
|
63
63
|
requirements:
|
64
64
|
- - "~>"
|
65
65
|
- !ruby/object:Gem::Version
|
66
|
-
version: '0.
|
66
|
+
version: '0.9'
|
67
67
|
- - ">="
|
68
68
|
- !ruby/object:Gem::Version
|
69
|
-
version: 0.
|
69
|
+
version: 0.9.3
|
70
70
|
type: :runtime
|
71
71
|
prerelease: false
|
72
72
|
version_requirements: !ruby/object:Gem::Requirement
|
73
73
|
requirements:
|
74
74
|
- - "~>"
|
75
75
|
- !ruby/object:Gem::Version
|
76
|
-
version: '0.
|
76
|
+
version: '0.9'
|
77
77
|
- - ">="
|
78
78
|
- !ruby/object:Gem::Version
|
79
|
-
version: 0.
|
79
|
+
version: 0.9.3
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: rexle-builder
|
82
82
|
requirement: !ruby/object:Gem::Requirement
|
83
83
|
requirements:
|
84
|
-
- - ">="
|
85
|
-
- !ruby/object:Gem::Version
|
86
|
-
version: 0.6.0
|
87
84
|
- - "~>"
|
88
85
|
- !ruby/object:Gem::Version
|
89
|
-
version: '0
|
86
|
+
version: '1.0'
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 1.0.2
|
90
90
|
type: :runtime
|
91
91
|
prerelease: false
|
92
92
|
version_requirements: !ruby/object:Gem::Requirement
|
93
93
|
requirements:
|
94
|
-
- - ">="
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: 0.6.0
|
97
94
|
- - "~>"
|
98
95
|
- !ruby/object:Gem::Version
|
99
|
-
version: '0
|
96
|
+
version: '1.0'
|
97
|
+
- - ">="
|
98
|
+
- !ruby/object:Gem::Version
|
99
|
+
version: 1.0.2
|
100
100
|
- !ruby/object:Gem::Dependency
|
101
101
|
name: rexle-css
|
102
102
|
requirement: !ruby/object:Gem::Requirement
|
metadata.gz.sig
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
ڿ�:�r-v*���2��A|���0���������
|