wombat 0.4.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +17 -14
- data/VERSION +1 -1
- data/fixtures/vcr_cassettes/broken_selector.yml +290 -0
- data/fixtures/vcr_cassettes/error_page.yml +609 -0
- data/lib/wombat/iterator.rb +5 -1
- data/lib/wombat/node_selector.rb +1 -1
- data/lib/wombat/parser.rb +23 -8
- data/lib/wombat/property.rb +4 -0
- data/spec/crawler_spec.rb +57 -1
- data/spec/integration/integration_spec.rb +29 -1
- data/spec/iterator_spec.rb +9 -0
- data/spec/wombat_spec.rb +15 -0
- data/wombat.gemspec +5 -3
- metadata +5 -3
data/README.md
CHANGED
@@ -11,11 +11,11 @@ Generic Web crawler with an elegant DSL that parses structured data from web pag
|
|
11
11
|
|
12
12
|
``gem install wombat``
|
13
13
|
|
14
|
-
|
14
|
+
Obs: Requires ruby 1.9
|
15
15
|
|
16
|
-
|
16
|
+
## Crawling a page:
|
17
17
|
|
18
|
-
|
18
|
+
The simplest way to use Wombat is by calling ``Wombat.crawl`` and passing it a block:
|
19
19
|
|
20
20
|
```ruby
|
21
21
|
|
@@ -24,9 +24,7 @@ Creating a crawler:
|
|
24
24
|
#coding: utf-8
|
25
25
|
require 'wombat'
|
26
26
|
|
27
|
-
|
28
|
-
include Wombat::Crawler
|
29
|
-
|
27
|
+
Wombat.crawl do
|
30
28
|
base_url "http://www.github.com"
|
31
29
|
list_page "/"
|
32
30
|
|
@@ -47,14 +45,9 @@ class GithubCrawler
|
|
47
45
|
end
|
48
46
|
```
|
49
47
|
|
50
|
-
######
|
48
|
+
###### The code above is gonna return the following hash:
|
51
49
|
|
52
50
|
```ruby
|
53
|
-
my_crawler = GithubCrawler.new
|
54
|
-
my_crawler.crawl
|
55
|
-
|
56
|
-
#=> the line above outputs:
|
57
|
-
|
58
51
|
{
|
59
52
|
"headline" => "1,316,633 people hosting over 3,951,378 git repositories",
|
60
53
|
"what_is" => "GitHub is the best way to collaborate with others. Fork, send pull requests and manage all your <strong>public</strong> and <strong>private</strong> git repositories.",
|
@@ -68,7 +61,8 @@ my_crawler.crawl
|
|
68
61
|
}
|
69
62
|
```
|
70
63
|
|
71
|
-
### For the documentation, please check the project
|
64
|
+
### This is just a sneak peek of what Wombat can do. For the complete documentation, please check the [project Wiki](http://github.com/felipecsl/wombat/wiki).
|
65
|
+
### [API Documentation](http://rubydoc.info/gems/wombat/0.4.0/frames).
|
72
66
|
|
73
67
|
|
74
68
|
## Contributing to Wombat
|
@@ -84,11 +78,20 @@ my_crawler.crawl
|
|
84
78
|
## Contributors
|
85
79
|
|
86
80
|
* Felipe Lima ([@felipecsl](https://github.com/felipecsl))
|
87
|
-
* [@sigi](https://github.com/sigi)
|
88
81
|
* Daniel Naves de Carvalho ([@danielnc](https://github.com/danielnc))
|
82
|
+
* [@sigi](https://github.com/sigi)
|
89
83
|
|
90
84
|
## Changelog
|
91
85
|
|
86
|
+
### version 1.0.0
|
87
|
+
|
88
|
+
* [Fixed a bug on malformed selectors](https://github.com/felipecsl/wombat/commit/e0f4eec20e1e2bb07a1813a1edd019933edeceaa)
|
89
|
+
* [Fixed a bug where multiple calls to #crawl would not clean up previously iterated array results and yield repeated results](https://github.com/felipecsl/wombat/commit/40b09a5bf8b9ba08aa51b6f41f706b7c3c4e4252)
|
90
|
+
|
91
|
+
### version 0.4.0
|
92
|
+
|
93
|
+
* Added utility method ``Wombat.crawl`` that eliminates the need to have a ruby class instance to use Wombat. Now you can use just ``Wombat.crawl`` and start working. The class based format still works as before though.
|
94
|
+
|
92
95
|
### version 0.3.1
|
93
96
|
|
94
97
|
* Added the ability to provide a block to Crawler#crawl and override the default crawler properties for a one off run (thanks to @danielnc)
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.5.0
|
@@ -0,0 +1,290 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://www.github.com/
|
6
|
+
body:
|
7
|
+
encoding: US-ASCII
|
8
|
+
string: ''
|
9
|
+
headers:
|
10
|
+
accept:
|
11
|
+
- ! '*/*'
|
12
|
+
user-agent:
|
13
|
+
- Mechanize/2.5.1 Ruby/1.9.3p0 (http://github.com/tenderlove/mechanize/)
|
14
|
+
accept-encoding:
|
15
|
+
- gzip,deflate,identity
|
16
|
+
accept-charset:
|
17
|
+
- ISO-8859-1,utf-8;q=0.7,*;q=0.7
|
18
|
+
accept-language:
|
19
|
+
- en-us,en;q=0.5
|
20
|
+
host:
|
21
|
+
- www.github.com
|
22
|
+
connection:
|
23
|
+
- keep-alive
|
24
|
+
keep-alive:
|
25
|
+
- 300
|
26
|
+
response:
|
27
|
+
status:
|
28
|
+
code: 301
|
29
|
+
message: Moved Permanently
|
30
|
+
headers:
|
31
|
+
server:
|
32
|
+
- nginx/1.0.13
|
33
|
+
date:
|
34
|
+
- Mon, 25 Jun 2012 03:00:17 GMT
|
35
|
+
content-type:
|
36
|
+
- text/html
|
37
|
+
content-length:
|
38
|
+
- '185'
|
39
|
+
connection:
|
40
|
+
- keep-alive
|
41
|
+
location:
|
42
|
+
- http://github.com/
|
43
|
+
body:
|
44
|
+
encoding: US-ASCII
|
45
|
+
string: ! "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body
|
46
|
+
bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>nginx/1.0.13</center>\r\n</body>\r\n</html>\r\n"
|
47
|
+
http_version: '1.1'
|
48
|
+
recorded_at: Mon, 25 Jun 2012 03:00:17 GMT
|
49
|
+
- request:
|
50
|
+
method: get
|
51
|
+
uri: http://github.com/
|
52
|
+
body:
|
53
|
+
encoding: US-ASCII
|
54
|
+
string: ''
|
55
|
+
headers:
|
56
|
+
accept:
|
57
|
+
- ! '*/*'
|
58
|
+
user-agent:
|
59
|
+
- Mechanize/2.5.1 Ruby/1.9.3p0 (http://github.com/tenderlove/mechanize/)
|
60
|
+
accept-encoding:
|
61
|
+
- gzip,deflate,identity
|
62
|
+
accept-charset:
|
63
|
+
- ISO-8859-1,utf-8;q=0.7,*;q=0.7
|
64
|
+
accept-language:
|
65
|
+
- en-us,en;q=0.5
|
66
|
+
host:
|
67
|
+
- github.com
|
68
|
+
connection:
|
69
|
+
- keep-alive
|
70
|
+
keep-alive:
|
71
|
+
- 300
|
72
|
+
response:
|
73
|
+
status:
|
74
|
+
code: 301
|
75
|
+
message: Moved Permanently
|
76
|
+
headers:
|
77
|
+
server:
|
78
|
+
- nginx/1.0.13
|
79
|
+
date:
|
80
|
+
- Mon, 25 Jun 2012 03:00:17 GMT
|
81
|
+
content-type:
|
82
|
+
- text/html
|
83
|
+
content-length:
|
84
|
+
- '185'
|
85
|
+
connection:
|
86
|
+
- close
|
87
|
+
location:
|
88
|
+
- https://github.com/
|
89
|
+
body:
|
90
|
+
encoding: US-ASCII
|
91
|
+
string: ! "<html>\r\n<head><title>301 Moved Permanently</title></head>\r\n<body
|
92
|
+
bgcolor=\"white\">\r\n<center><h1>301 Moved Permanently</h1></center>\r\n<hr><center>nginx/1.0.13</center>\r\n</body>\r\n</html>\r\n"
|
93
|
+
http_version: '1.1'
|
94
|
+
recorded_at: Mon, 25 Jun 2012 03:00:17 GMT
|
95
|
+
- request:
|
96
|
+
method: get
|
97
|
+
uri: https://github.com/
|
98
|
+
body:
|
99
|
+
encoding: US-ASCII
|
100
|
+
string: ''
|
101
|
+
headers:
|
102
|
+
accept:
|
103
|
+
- ! '*/*'
|
104
|
+
user-agent:
|
105
|
+
- Mechanize/2.5.1 Ruby/1.9.3p0 (http://github.com/tenderlove/mechanize/)
|
106
|
+
accept-encoding:
|
107
|
+
- gzip,deflate,identity
|
108
|
+
accept-charset:
|
109
|
+
- ISO-8859-1,utf-8;q=0.7,*;q=0.7
|
110
|
+
accept-language:
|
111
|
+
- en-us,en;q=0.5
|
112
|
+
host:
|
113
|
+
- github.com
|
114
|
+
connection:
|
115
|
+
- keep-alive
|
116
|
+
keep-alive:
|
117
|
+
- 300
|
118
|
+
response:
|
119
|
+
status:
|
120
|
+
code: 200
|
121
|
+
message: OK
|
122
|
+
headers:
|
123
|
+
server:
|
124
|
+
- nginx/1.0.13
|
125
|
+
date:
|
126
|
+
- Mon, 25 Jun 2012 03:00:18 GMT
|
127
|
+
content-type:
|
128
|
+
- text/html; charset=utf-8
|
129
|
+
transfer-encoding:
|
130
|
+
- chunked
|
131
|
+
connection:
|
132
|
+
- keep-alive
|
133
|
+
status:
|
134
|
+
- 200 OK
|
135
|
+
x-frame-options:
|
136
|
+
- deny
|
137
|
+
set-cookie:
|
138
|
+
- _gh_sess=BAh7BzoPc2Vzc2lvbl9pZCIlZGQzNWQ4Y2UxNDlkZjU5MzUwNTA1MGZlOWIwZjFlOGY6EF9jc3JmX3Rva2VuIjFhK1dZYTVzcWsvQk9NMGswRzVUUy9TRmxCeUFPNEdLMTdxdDlOcmtyVzVRPQ%3D%3D--d259cb2a693e44292d72df7a3eb5d3ca6b6d4f9d;
|
139
|
+
path=/; expires=Sat, 01-Jan-2022 00:00:00 GMT; secure; HttpOnly
|
140
|
+
strict-transport-security:
|
141
|
+
- max-age=2592000
|
142
|
+
cache-control:
|
143
|
+
- private, max-age=0, must-revalidate
|
144
|
+
x-runtime:
|
145
|
+
- '9'
|
146
|
+
etag:
|
147
|
+
- ! '"cc8a653aa913eb5c43762432d5842b50"'
|
148
|
+
content-encoding:
|
149
|
+
- gzip
|
150
|
+
body:
|
151
|
+
encoding: ASCII-8BIT
|
152
|
+
string: !binary |-
|
153
|
+
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
|
287
|
+
r5NddILultTV0KDP89E3OdTnU/8PJkLyeFZVAAA=
|
288
|
+
http_version: '1.1'
|
289
|
+
recorded_at: Mon, 25 Jun 2012 03:00:18 GMT
|
290
|
+
recorded_with: VCR 2.1.1
|
@@ -0,0 +1,609 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: get
|
5
|
+
uri: http://www.terra.com.br/portal
|
6
|
+
body: ''
|
7
|
+
headers:
|
8
|
+
accept:
|
9
|
+
- ! '*/*'
|
10
|
+
user-agent:
|
11
|
+
- Mechanize/2.1 Ruby/1.9.3p0 (http://github.com/tenderlove/mechanize/)
|
12
|
+
accept-encoding:
|
13
|
+
- gzip,deflate,identity
|
14
|
+
accept-charset:
|
15
|
+
- ISO-8859-1,utf-8;q=0.7,*;q=0.7
|
16
|
+
accept-language:
|
17
|
+
- en-us,en;q=0.5
|
18
|
+
host:
|
19
|
+
- www.terra.com.br
|
20
|
+
connection:
|
21
|
+
- keep-alive
|
22
|
+
keep-alive:
|
23
|
+
- 300
|
24
|
+
response:
|
25
|
+
status:
|
26
|
+
code: 301
|
27
|
+
message: Moved Permanently
|
28
|
+
headers:
|
29
|
+
location:
|
30
|
+
- http://www.terra.com.br/portal/
|
31
|
+
cache-control:
|
32
|
+
- max-age=15
|
33
|
+
expires:
|
34
|
+
- Wed, 08 Feb 2012 08:29:13 GMT
|
35
|
+
vary:
|
36
|
+
- Accept-Encoding
|
37
|
+
content-encoding:
|
38
|
+
- gzip
|
39
|
+
content-type:
|
40
|
+
- text/html; charset=iso-8859-1
|
41
|
+
content-length:
|
42
|
+
- '196'
|
43
|
+
date:
|
44
|
+
- Wed, 08 Feb 2012 08:28:56 GMT
|
45
|
+
age:
|
46
|
+
- '0'
|
47
|
+
connection:
|
48
|
+
- keep-alive
|
49
|
+
body: !binary |-
|
50
|
+
H4sIAAAAAAAAA22OMQ+CMBCFd37FyW4PdTNnBwWjCShDHRwLnKkJtaRWif9e
|
51
|
+
wNXxvffde0ez9LxT1zKDgypyKC/b/LiDeI54zNQeMVXpL1mKBDE7xTIiE2wr
|
52
|
+
ybBuBhHuoWW5ShZQuDc3ULK3+sGP0H4If2FEOMFUueYz3i/kH3ZwI+qkMgyN
|
53
|
+
q192sMHoJ9gJJQ3G820TmxC6NWLf9yKw91rUzorKY+d80C3G0rBnQi0FYTdO
|
54
|
+
T6ND/fh09AWY7NsA7wAAAA==
|
55
|
+
http_version: '1.1'
|
56
|
+
recorded_at: Wed, 08 Feb 2012 08:28:58 GMT
|
57
|
+
- request:
|
58
|
+
method: get
|
59
|
+
uri: http://www.terra.com.br/portal/
|
60
|
+
body: ''
|
61
|
+
headers:
|
62
|
+
accept:
|
63
|
+
- ! '*/*'
|
64
|
+
user-agent:
|
65
|
+
- Mechanize/2.1 Ruby/1.9.3p0 (http://github.com/tenderlove/mechanize/)
|
66
|
+
accept-encoding:
|
67
|
+
- gzip,deflate,identity
|
68
|
+
accept-charset:
|
69
|
+
- ISO-8859-1,utf-8;q=0.7,*;q=0.7
|
70
|
+
accept-language:
|
71
|
+
- en-us,en;q=0.5
|
72
|
+
host:
|
73
|
+
- www.terra.com.br
|
74
|
+
connection:
|
75
|
+
- keep-alive
|
76
|
+
keep-alive:
|
77
|
+
- 300
|
78
|
+
response:
|
79
|
+
status:
|
80
|
+
code: 404
|
81
|
+
message: Not found
|
82
|
+
headers:
|
83
|
+
vary:
|
84
|
+
- Accept-Encoding
|
85
|
+
content-encoding:
|
86
|
+
- gzip
|
87
|
+
content-type:
|
88
|
+
- text/html
|
89
|
+
content-length:
|
90
|
+
- '22869'
|
91
|
+
date:
|
92
|
+
- Wed, 08 Feb 2012 08:28:59 GMT
|
93
|
+
age:
|
94
|
+
- '12'
|
95
|
+
connection:
|
96
|
+
- keep-alive
|
97
|
+
body: !binary |-
|
98
|
+
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
|
512
|
+
GS+cw4sWJFx0YI1Veyu8f+XYbvBiEkxjdMyxAKm2OeQhV2Y+M9yU/qhULZfr
|
513
|
+
ePh0jkv6KZ6RbZ6qcd18Z8Fe2r/ePEDXvkIiPBq1mkEKgIEunyIjPmaeJXl/
|
514
|
+
C8slGXYp1b1ajsjJr2MDSz6hnCtTenaEVk1dRXtGR8lagMe1bjaGJZ3Td2qi
|
515
|
+
Tszo0xy/qSS8C3L5LkjluyCTbxLbkB7e+NAtZXO+57S9a2XtjS1Ct03eu6gq
|
516
|
+
yaIB/VEMFH8GpdeW7YhSrdYot9V1RnXVMaUgC8e4epGOo7WLZjMV/lQvrKD6
|
517
|
+
xIe3zWapU0/hZjggtWAqBbVNlaSOX1KQUQl0yTd7p6VyGf+r1OC/SqPa6e80
|
518
|
+
Ou1W7/Vuq9Npvq7s7aRUondc5cpi58LHyZs93eDXqCvGrDF/jmG5F6CEZ2Fk
|
519
|
+
2fqm+Ld7GIhWpfx3MBDVSrXWbzSqr3cau412+/VuvdLppQaiB0oZ4+xMDjEy
|
520
|
+
QE747cZiDsyjD0ej3Pk7GI5Ko9bsV1/Xtnc7O9V6pbxd2d2tp7cKWDVhgNVA
|
521
|
+
Dqf70B0eiN+Rf5xg+/u3G6AVAN96yDStf6S0JRvsiL2R9gUGWBduPZrtano0
|
522
|
+
u0/+p+T/1hihW/cEtvcWluM9hh7xIV1W2XNcTG0Ryu9u2y2Yho2792pdvitX
|
523
|
+
S9V6q1nuv95ultvN3e1qtby7u1OlSiK3JlEP2MlGCyNH/2rOnlfLlfKtKQPS
|
524
|
+
tFZ5fNIoCVmtNGBK9l7X2736TrW9t7fXaN2JNqeWy3as8PoF68UVTTBaRGCF
|
525
|
+
o9tSqFL+KrxTLtXq1Wa/Uq/vNduVzk67V2uX2707ss4hegHvWLQDtPkLtgcM
|
526
|
+
hJU+zsUn+rvD3bmzh9uzVrPa/kqsVem0q/1Gu9nYaZXrrxutaqWzdzfW+mMk
|
527
|
+
HPZHzHR9qiqWHVg2qOrxsSTott/fgVCN8teag+VWpb9dbjVr7RaojtVWtVnd
|
528
|
+
uxOh3kRk9eLK/CX921Kl1fxqcqlSKfd7tepOs9ZpN8o7r/ea9Z070eSdDNgP
|
529
|
+
wnco64zBDkF0R+4wxy+AqqBjfslbU61SbX4FadUp4WFdrd/Z3evt9jrV3Vqv
|
530
|
+
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
|
606
|
+
/7JW741akwEA
|
607
|
+
http_version: '1.1'
|
608
|
+
recorded_at: Wed, 08 Feb 2012 08:28:59 GMT
|
609
|
+
recorded_with: VCR 2.0.0.rc1
|
data/lib/wombat/iterator.rb
CHANGED
@@ -10,7 +10,7 @@ module Wombat
|
|
10
10
|
def parse
|
11
11
|
raise ArgumentError.new('Must provide a block to locate property values') unless block_given?
|
12
12
|
|
13
|
-
|
13
|
+
all_properties.each do |p|
|
14
14
|
p.result ||= []
|
15
15
|
result = yield p
|
16
16
|
if result
|
@@ -20,6 +20,10 @@ module Wombat
|
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
23
|
+
def reset
|
24
|
+
all_properties.each { |p| p.reset }
|
25
|
+
end
|
26
|
+
|
23
27
|
def flatten(depth = nil)
|
24
28
|
# determine the iterator length by the biggest property array that we have
|
25
29
|
length = all_properties.map(&:result).sort { |a| a.length }.last.size
|
data/lib/wombat/node_selector.rb
CHANGED
data/lib/wombat/parser.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
#coding: utf-8
|
2
2
|
require 'wombat/property_locator'
|
3
3
|
require 'mechanize'
|
4
4
|
require 'restclient'
|
@@ -6,7 +6,7 @@ require 'restclient'
|
|
6
6
|
module Wombat
|
7
7
|
module Parser
|
8
8
|
include PropertyLocator
|
9
|
-
attr_accessor :mechanize, :context
|
9
|
+
attr_accessor :mechanize, :context, :response_code
|
10
10
|
|
11
11
|
def initialize
|
12
12
|
@mechanize = Mechanize.new
|
@@ -17,6 +17,7 @@ module Wombat
|
|
17
17
|
original_context = self.context
|
18
18
|
|
19
19
|
metadata.iterators.each do |it|
|
20
|
+
it.reset # Clean up iterator results before starting
|
20
21
|
select_nodes(it.selector).each do |node|
|
21
22
|
self.context = node
|
22
23
|
it.parse { |p| locate p }
|
@@ -30,14 +31,28 @@ module Wombat
|
|
30
31
|
metadata.flatten
|
31
32
|
end
|
32
33
|
|
33
|
-
private
|
34
|
+
private
|
34
35
|
def parser_for(metadata)
|
35
36
|
url = "#{metadata[:base_url]}#{metadata[:list_page]}"
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
37
|
+
page = nil
|
38
|
+
parser = nil
|
39
|
+
begin
|
40
|
+
if metadata[:format] == :html
|
41
|
+
page = @mechanize.get(url)
|
42
|
+
parser = page.parser
|
43
|
+
else
|
44
|
+
page = RestClient.get(url)
|
45
|
+
parser = Nokogiri::XML page
|
46
|
+
end
|
47
|
+
self.response_code = page.code.to_i if page.respond_to? :code
|
48
|
+
parser
|
49
|
+
rescue
|
50
|
+
if $!.respond_to? :http_code
|
51
|
+
self.response_code = $!.http_code.to_i
|
52
|
+
elsif $!.respond_to? :response_code
|
53
|
+
self.response_code = $!.response_code.to_i
|
54
|
+
end
|
55
|
+
raise $!
|
41
56
|
end
|
42
57
|
end
|
43
58
|
end
|
data/lib/wombat/property.rb
CHANGED
data/spec/crawler_spec.rb
CHANGED
@@ -143,7 +143,7 @@ describe Wombat::Crawler do
|
|
143
143
|
|
144
144
|
another_instance.crawl
|
145
145
|
end
|
146
|
-
|
146
|
+
|
147
147
|
it 'should remove created method missing' do
|
148
148
|
@crawler.base_url "danielnc.com"
|
149
149
|
@crawler.list_page "/itens"
|
@@ -175,5 +175,61 @@ describe Wombat::Crawler do
|
|
175
175
|
|
176
176
|
@crawler_instance.instance_variables.index(:@metadata_dup).should be_nil
|
177
177
|
end
|
178
|
+
|
179
|
+
context "response code" do
|
180
|
+
it "should have correct mechanize response code" do
|
181
|
+
VCR.use_cassette('basic_crawler_page') do
|
182
|
+
|
183
|
+
@crawler.base_url "http://www.terra.com.br"
|
184
|
+
@crawler.list_page '/portal'
|
185
|
+
|
186
|
+
@crawler.search "css=.btn-search"
|
187
|
+
|
188
|
+
@crawler_instance.crawl
|
189
|
+
@crawler_instance.response_code.should be(200)
|
190
|
+
end
|
191
|
+
|
192
|
+
end
|
193
|
+
it "should have correct rest client code" do
|
194
|
+
VCR.use_cassette('basic_crawler_page') do
|
195
|
+
|
196
|
+
@crawler.base_url "http://www.terra.com.br"
|
197
|
+
@crawler.list_page '/portal'
|
198
|
+
|
199
|
+
@crawler.search "css=.btn-search"
|
200
|
+
@crawler.format :xml
|
201
|
+
|
202
|
+
@crawler_instance.crawl
|
203
|
+
@crawler_instance.response_code.should be(200)
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
207
|
+
it "should have mechanize error response code" do
|
208
|
+
VCR.use_cassette('error_page') do
|
209
|
+
|
210
|
+
@crawler.base_url "http://www.terra.com.br"
|
211
|
+
@crawler.list_page '/portal'
|
212
|
+
|
213
|
+
@crawler.search "css=.btn-search"
|
214
|
+
|
215
|
+
lambda { @crawler_instance.crawl }.should raise_error("404 => Net::HTTPNotFound for http://www.terra.com.br/portal/ -- unhandled response")
|
216
|
+
@crawler_instance.response_code.should be(404)
|
217
|
+
end
|
218
|
+
end
|
219
|
+
|
220
|
+
it "should have rest client error response code" do
|
221
|
+
VCR.use_cassette('error_page') do
|
222
|
+
|
223
|
+
@crawler.base_url "http://www.terra.com.br"
|
224
|
+
@crawler.list_page '/portal'
|
225
|
+
|
226
|
+
@crawler.search "css=.btn-search"
|
227
|
+
@crawler.format :xml
|
228
|
+
lambda { @crawler_instance.crawl }.should raise_error(RestClient::ResourceNotFound)
|
229
|
+
@crawler_instance.response_code.should be(404)
|
230
|
+
end
|
231
|
+
end
|
232
|
+
|
233
|
+
end
|
178
234
|
end
|
179
235
|
end
|
@@ -34,6 +34,34 @@ describe 'basic crawler setup' do
|
|
34
34
|
end
|
35
35
|
end
|
36
36
|
|
37
|
+
it 'should clear iterators between multiple runs' do
|
38
|
+
crawler = Class.new
|
39
|
+
crawler.send(:include, Wombat::Crawler)
|
40
|
+
|
41
|
+
crawler.base_url "http://www.terra.com.br"
|
42
|
+
crawler.list_page '/portal'
|
43
|
+
|
44
|
+
crawler.for_each "css=.ctn-links" do
|
45
|
+
menu "css=a"
|
46
|
+
end
|
47
|
+
|
48
|
+
crawler_instance = crawler.new
|
49
|
+
result_hash = [{"menu"=>"Agenda"}, {"menu"=>"Brasileiro"}, {"menu"=>"Brasil"}, {"menu"=>"Bolsas"}, {"menu"=>"Cinema"}, {"menu"=>"Galerias de Fotos"}, {"menu"=>"Beleza"}, {"menu"=>"Esportes"}, {"menu"=>"Assine o RSS"}]
|
50
|
+
results = nil
|
51
|
+
|
52
|
+
VCR.use_cassette('basic_crawler_page') do
|
53
|
+
results = crawler_instance.crawl
|
54
|
+
end
|
55
|
+
|
56
|
+
results["iterator0"].should == result_hash
|
57
|
+
|
58
|
+
VCR.use_cassette('basic_crawler_page') do
|
59
|
+
results = crawler_instance.crawl
|
60
|
+
end
|
61
|
+
|
62
|
+
results["iterator0"].should == result_hash
|
63
|
+
end
|
64
|
+
|
37
65
|
it 'should crawl page through block to class instance crawl method' do
|
38
66
|
VCR.use_cassette('basic_crawler_page') do
|
39
67
|
crawler = Class.new
|
@@ -121,7 +149,7 @@ describe 'basic crawler setup' do
|
|
121
149
|
end
|
122
150
|
end
|
123
151
|
|
124
|
-
it
|
152
|
+
it 'should crawl xml with namespaces' do
|
125
153
|
VCR.use_cassette('xml_with_namespace') do
|
126
154
|
crawler = Class.new
|
127
155
|
crawler.send(:include, Wombat::Crawler)
|
data/spec/iterator_spec.rb
CHANGED
@@ -26,6 +26,15 @@ describe Wombat::Iterator do
|
|
26
26
|
end
|
27
27
|
end
|
28
28
|
|
29
|
+
context 'reset' do
|
30
|
+
it 'should clean up properties results' do
|
31
|
+
it.prop_1 'some_selector'
|
32
|
+
it['prop_1'].result = [1, 2]
|
33
|
+
it.reset
|
34
|
+
it['prop_1'].result.should be_nil
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
29
38
|
it 'should flatten properties to plain hash format' do
|
30
39
|
it.prop_1 "some_selector"
|
31
40
|
it.prop_2 "another_selector"
|
data/spec/wombat_spec.rb
CHANGED
@@ -4,4 +4,19 @@ describe Wombat do
|
|
4
4
|
it 'should provide syntactic sugar method Wombat.crawl' do
|
5
5
|
Wombat.should respond_to(:crawl)
|
6
6
|
end
|
7
|
+
|
8
|
+
it 'should accept regular properties (non-selectors)' do
|
9
|
+
VCR.use_cassette('broken_selector') do
|
10
|
+
lambda {
|
11
|
+
Wombat.crawl do
|
12
|
+
base_url "http://www.github.com"
|
13
|
+
list_page "/"
|
14
|
+
|
15
|
+
source :obaoba
|
16
|
+
description 'Oba Oba'
|
17
|
+
website 'http://obaoba.com.br'
|
18
|
+
end
|
19
|
+
}.should_not raise_error
|
20
|
+
end
|
21
|
+
end
|
7
22
|
end
|
data/wombat.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "wombat"
|
8
|
-
s.version = "0.
|
8
|
+
s.version = "0.5.0"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Felipe Lima"]
|
12
|
-
s.date = "2012-
|
12
|
+
s.date = "2012-06-25"
|
13
13
|
s.description = "Generic Web crawler with a DSL that parses structured data from web pages"
|
14
14
|
s.email = "felipe.lima@gmail.com"
|
15
15
|
s.extra_rdoc_files = [
|
@@ -28,6 +28,8 @@ Gem::Specification.new do |s|
|
|
28
28
|
"Rakefile",
|
29
29
|
"VERSION",
|
30
30
|
"fixtures/vcr_cassettes/basic_crawler_page.yml",
|
31
|
+
"fixtures/vcr_cassettes/broken_selector.yml",
|
32
|
+
"fixtures/vcr_cassettes/error_page.yml",
|
31
33
|
"fixtures/vcr_cassettes/for_each_page.yml",
|
32
34
|
"fixtures/vcr_cassettes/xml_with_namespace.yml",
|
33
35
|
"lib/wombat.rb",
|
@@ -57,7 +59,7 @@ Gem::Specification.new do |s|
|
|
57
59
|
s.licenses = ["MIT"]
|
58
60
|
s.require_paths = ["lib"]
|
59
61
|
s.required_ruby_version = Gem::Requirement.new(">= 1.9")
|
60
|
-
s.rubygems_version = "1.8.
|
62
|
+
s.rubygems_version = "1.8.24"
|
61
63
|
s.summary = "Ruby DSL to crawl web pages"
|
62
64
|
|
63
65
|
if s.respond_to? :specification_version then
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: wombat
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.5.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-06-25 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: mechanize
|
@@ -190,6 +190,8 @@ files:
|
|
190
190
|
- Rakefile
|
191
191
|
- VERSION
|
192
192
|
- fixtures/vcr_cassettes/basic_crawler_page.yml
|
193
|
+
- fixtures/vcr_cassettes/broken_selector.yml
|
194
|
+
- fixtures/vcr_cassettes/error_page.yml
|
193
195
|
- fixtures/vcr_cassettes/for_each_page.yml
|
194
196
|
- fixtures/vcr_cassettes/xml_with_namespace.yml
|
195
197
|
- lib/wombat.rb
|
@@ -235,7 +237,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
235
237
|
version: '0'
|
236
238
|
requirements: []
|
237
239
|
rubyforge_project:
|
238
|
-
rubygems_version: 1.8.
|
240
|
+
rubygems_version: 1.8.24
|
239
241
|
signing_key:
|
240
242
|
specification_version: 3
|
241
243
|
summary: Ruby DSL to crawl web pages
|