microdata 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/bin/microdata.rb +18 -1
- data/lib/microdata/document.rb +1 -1
- data/lib/microdata/version.rb +1 -1
- data/test/data/example_with_no_itemscope.html +22 -0
- metadata +3 -1
data/bin/microdata.rb
CHANGED
@@ -5,4 +5,21 @@
|
|
5
5
|
$LOAD_PATH.unshift File.join(File.dirname(__FILE__), '..', 'lib')
|
6
6
|
require 'microdata'
|
7
7
|
|
8
|
-
|
8
|
+
location = ARGV[0]
|
9
|
+
content = open(location)
|
10
|
+
document = Microdata::Document.new(content, location)
|
11
|
+
items = document.extract_items
|
12
|
+
|
13
|
+
if items.empty? || items.nil?
|
14
|
+
puts "No Microdata items found."
|
15
|
+
itemprops = document.doc.search('//*[@itemprop]')
|
16
|
+
if !itemprops.empty?
|
17
|
+
puts "There are some itemprops, which means no top level items with an itemscope have been found."
|
18
|
+
end
|
19
|
+
else
|
20
|
+
hash = {}
|
21
|
+
hash[:items] = items.map do |item|
|
22
|
+
item.to_hash
|
23
|
+
end
|
24
|
+
puts JSON.pretty_generate(hash)
|
25
|
+
end
|
data/lib/microdata/document.rb
CHANGED
data/lib/microdata/version.rb
CHANGED
@@ -0,0 +1,22 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<html>
|
3
|
+
<!-- shameless -->
|
4
|
+
<head>
|
5
|
+
<title>Jason Ronallo</title>
|
6
|
+
</head>
|
7
|
+
|
8
|
+
<body>
|
9
|
+
<span itemtype="http://schema.org/Person"
|
10
|
+
itemid="http://ronallo.com#me">
|
11
|
+
<a itemprop="url" href="http://twitter.com/ronallo">
|
12
|
+
<span itemprop="name">Jason Ronallo</span>
|
13
|
+
</a> is the
|
14
|
+
<span itemprop="jobTitle">Associate Head of Digital Library Initiatives</span> at
|
15
|
+
<span itemprop="affiliation" itemtype="http://schema.org/Library" itemid="http://lib.ncsu.edu">
|
16
|
+
<span itemprop="name">
|
17
|
+
<a itemprop="url" href="http://www.lib.ncsu.edu">NCSU Libraries</a>
|
18
|
+
</span>
|
19
|
+
</span>.
|
20
|
+
</span>
|
21
|
+
</body>
|
22
|
+
</html>
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: microdata
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -81,6 +81,7 @@ files:
|
|
81
81
|
- microdata.gemspec
|
82
82
|
- test/data/example.html
|
83
83
|
- test/data/example_itemref.html
|
84
|
+
- test/data/example_with_no_itemscope.html
|
84
85
|
- test/test_helper.rb
|
85
86
|
- test/test_itemref.rb
|
86
87
|
- test/test_parse.rb
|
@@ -112,6 +113,7 @@ summary: Ruby library for extracting HTML5 Microdata
|
|
112
113
|
test_files:
|
113
114
|
- test/data/example.html
|
114
115
|
- test/data/example_itemref.html
|
116
|
+
- test/data/example_with_no_itemscope.html
|
115
117
|
- test/test_helper.rb
|
116
118
|
- test/test_itemref.rb
|
117
119
|
- test/test_parse.rb
|