imw 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +15 -0
- data/CHANGELOG +0 -0
- data/LICENSE +674 -0
- data/README.rdoc +101 -0
- data/Rakefile +20 -0
- data/VERSION +1 -0
- data/etc/imwrc.rb +76 -0
- data/lib/imw.rb +42 -0
- data/lib/imw/boot.rb +58 -0
- data/lib/imw/dataset.rb +233 -0
- data/lib/imw/dataset/datamapper.rb +66 -0
- data/lib/imw/dataset/datamapper/time_and_user_stamps.rb +37 -0
- data/lib/imw/dataset/loaddump.rb +50 -0
- data/lib/imw/dataset/old/file_collection.rb +88 -0
- data/lib/imw/dataset/old/file_collection_utils.rb +71 -0
- data/lib/imw/dataset/scaffold.rb +132 -0
- data/lib/imw/dataset/scraped_uri.rb +305 -0
- data/lib/imw/dataset/scrub/old_working_scrubber.rb +87 -0
- data/lib/imw/dataset/scrub/scrub.rb +147 -0
- data/lib/imw/dataset/scrub/scrub_simple_url.rb +38 -0
- data/lib/imw/dataset/scrub/scrub_test.rb +60 -0
- data/lib/imw/dataset/scrub/slug.rb +101 -0
- data/lib/imw/dataset/stats.rb +73 -0
- data/lib/imw/dataset/stats/counter.rb +23 -0
- data/lib/imw/dataset/task.rb +38 -0
- data/lib/imw/dataset/workflow.rb +81 -0
- data/lib/imw/files.rb +110 -0
- data/lib/imw/files/archive.rb +113 -0
- data/lib/imw/files/basicfile.rb +122 -0
- data/lib/imw/files/binary.rb +28 -0
- data/lib/imw/files/compressed_file.rb +93 -0
- data/lib/imw/files/compressed_files_and_archives.rb +348 -0
- data/lib/imw/files/compressible.rb +103 -0
- data/lib/imw/files/csv.rb +112 -0
- data/lib/imw/files/json.rb +41 -0
- data/lib/imw/files/sgml.rb +65 -0
- data/lib/imw/files/text.rb +68 -0
- data/lib/imw/files/yaml.rb +46 -0
- data/lib/imw/packagers.rb +8 -0
- data/lib/imw/packagers/archiver.rb +108 -0
- data/lib/imw/packagers/s3_mover.rb +28 -0
- data/lib/imw/parsers.rb +7 -0
- data/lib/imw/parsers/html_parser.rb +382 -0
- data/lib/imw/parsers/html_parser/matchers.rb +306 -0
- data/lib/imw/parsers/line_parser.rb +87 -0
- data/lib/imw/parsers/regexp_parser.rb +72 -0
- data/lib/imw/utils.rb +24 -0
- data/lib/imw/utils/components.rb +61 -0
- data/lib/imw/utils/config.rb +46 -0
- data/lib/imw/utils/error.rb +54 -0
- data/lib/imw/utils/extensions/array.rb +125 -0
- data/lib/imw/utils/extensions/class/attribute_accessors.rb +8 -0
- data/lib/imw/utils/extensions/core.rb +43 -0
- data/lib/imw/utils/extensions/dir.rb +24 -0
- data/lib/imw/utils/extensions/file_core.rb +64 -0
- data/lib/imw/utils/extensions/hash.rb +218 -0
- data/lib/imw/utils/extensions/hpricot.rb +48 -0
- data/lib/imw/utils/extensions/string.rb +49 -0
- data/lib/imw/utils/extensions/struct.rb +42 -0
- data/lib/imw/utils/extensions/symbol.rb +28 -0
- data/lib/imw/utils/extensions/typed_struct.rb +22 -0
- data/lib/imw/utils/extensions/uri.rb +59 -0
- data/lib/imw/utils/log.rb +67 -0
- data/lib/imw/utils/misc.rb +63 -0
- data/lib/imw/utils/paths.rb +115 -0
- data/lib/imw/utils/uri.rb +59 -0
- data/lib/imw/utils/uuid.rb +33 -0
- data/lib/imw/utils/validate.rb +38 -0
- data/lib/imw/utils/version.rb +12 -0
- data/lib/imw/utils/view.rb +113 -0
- data/lib/imw/utils/view/dump_csv.rb +112 -0
- data/lib/imw/utils/view/dump_csv_older.rb +117 -0
- data/spec/data/sample.csv +131 -0
- data/spec/data/sample.tsv +131 -0
- data/spec/data/sample.txt +131 -0
- data/spec/data/sample.xml +653 -0
- data/spec/data/sample.yaml +652 -0
- data/spec/imw/dataset/datamapper/uri_spec.rb +43 -0
- data/spec/imw/dataset/datamapper_spec_helper.rb +11 -0
- data/spec/imw/files/archive_spec.rb +118 -0
- data/spec/imw/files/basicfile_spec.rb +121 -0
- data/spec/imw/files/bz2_spec.rb +32 -0
- data/spec/imw/files/compressed_file_spec.rb +96 -0
- data/spec/imw/files/compressible_spec.rb +100 -0
- data/spec/imw/files/file_spec.rb +144 -0
- data/spec/imw/files/gz_spec.rb +32 -0
- data/spec/imw/files/rar_spec.rb +33 -0
- data/spec/imw/files/tar_spec.rb +31 -0
- data/spec/imw/files/text_spec.rb +23 -0
- data/spec/imw/files/zip_spec.rb +31 -0
- data/spec/imw/files_spec.rb +38 -0
- data/spec/imw/packagers/archiver_spec.rb +125 -0
- data/spec/imw/packagers/s3_mover_spec.rb +7 -0
- data/spec/imw/parsers/line_parser_spec.rb +96 -0
- data/spec/imw/parsers/regexp_parser_spec.rb +42 -0
- data/spec/imw/utils/extensions/file_core_spec.rb +72 -0
- data/spec/imw/utils/extensions/find_spec.rb +113 -0
- data/spec/imw/utils/paths_spec.rb +38 -0
- data/spec/imw/workflow/rip/local_spec.rb +89 -0
- data/spec/imw/workflow/rip_spec.rb +27 -0
- data/spec/rcov.opts +1 -0
- data/spec/spec.opts +4 -0
- data/spec/spec_helper.rb +32 -0
- data/spec/support/archive_contents_matcher.rb +94 -0
- data/spec/support/custom_matchers.rb +21 -0
- data/spec/support/directory_contents_matcher.rb +61 -0
- data/spec/support/extensions.rb +18 -0
- data/spec/support/file_contents_matcher.rb +50 -0
- data/spec/support/random.rb +210 -0
- data/spec/support/without_regard_to_order_matcher.rb +58 -0
- metadata +196 -0
@@ -0,0 +1,112 @@
|
|
1
|
+
# #
|
2
|
+
# # views
|
3
|
+
# #
|
4
|
+
# require 'imw/view/db_infochimps'
|
5
|
+
#
|
6
|
+
|
7
|
+
|
8
|
+
#
|
9
|
+
# This is where views of the metadata will go (right now it's all just
|
10
|
+
# sitting in a crapheap within model.rb).
|
11
|
+
#
|
12
|
+
# we'll have routines for
|
13
|
+
#
|
14
|
+
# - dumping/undumping to yaml
|
15
|
+
# - dumping/undumping to files that load right into the ics database.
|
16
|
+
#
|
17
|
+
class IMWObject
|
18
|
+
|
19
|
+
def self.from_icss(hsh)
|
20
|
+
# lists of dumpables
|
21
|
+
self._attr_objlists.each do |attr, cl|
|
22
|
+
if (vals = hsh.delete(attr.to_s))
|
23
|
+
hsh[attr] = vals.map{ |val| cl.from_icss(val) }
|
24
|
+
end
|
25
|
+
end
|
26
|
+
# simply dumpable objects
|
27
|
+
self._attr_objs.each do |attr, cl|
|
28
|
+
if (val = hsh.delete(attr.to_s))
|
29
|
+
hsh[attr] = cl.from_icss(val)
|
30
|
+
end
|
31
|
+
end
|
32
|
+
self.new(hsh)
|
33
|
+
end
|
34
|
+
|
35
|
+
# Dump as a plain hash
|
36
|
+
def to_icss()
|
37
|
+
hsh = instance_values
|
38
|
+
# lists of dumpable objects
|
39
|
+
self.class._attr_objlists.keys.map(&:to_s).each do |attr|
|
40
|
+
hsh[attr] = (hsh.delete(attr)||[]).map{ |a| a.to_icss() }
|
41
|
+
end
|
42
|
+
# simply dumpable objects
|
43
|
+
self.class._attr_objs.keys.map(&:to_s).each do |attr|
|
44
|
+
(v=hsh.delete attr) && hsh[attr] = v.to_icss
|
45
|
+
end
|
46
|
+
hsh
|
47
|
+
end
|
48
|
+
|
49
|
+
# Pivot from object to relational view
|
50
|
+
def to_csv(parent_id=nil)
|
51
|
+
tables = {}
|
52
|
+
sub_ids = []
|
53
|
+
my_cl = self.class.to_s
|
54
|
+
self.class._attr_objs.sort.each do |attr, cl|
|
55
|
+
tables[attr] ||= [] ; tables[attr].push(self[attr].to_csv(id))
|
56
|
+
join = "%s_%s" % [my_cl, cl.to_s].sort
|
57
|
+
tables[join] ||= [] ; tables[join].push(id, self[attr].id)
|
58
|
+
sub_ids.push self[attr].handle
|
59
|
+
end
|
60
|
+
|
61
|
+
self.class._attr_objlists.sort.each do |attr, cl|
|
62
|
+
tables[attr] ||= []
|
63
|
+
join = "%s_%s" % [my_cl, cl.to_s].sort
|
64
|
+
tables[join] ||= []
|
65
|
+
self[attr].each do |obj|
|
66
|
+
tables[attr].push(obj.to_csv(id))
|
67
|
+
tables[join].push(id, obj.id)
|
68
|
+
sub_ids.push obj.handle
|
69
|
+
end
|
70
|
+
end
|
71
|
+
|
72
|
+
|
73
|
+
tables[self.class.to_s] = [
|
74
|
+
[self.id, parent_id].compact +
|
75
|
+
slice(self.class._attr_scalars.keys - [:id]) +
|
76
|
+
sub_ids
|
77
|
+
]
|
78
|
+
tables
|
79
|
+
end
|
80
|
+
|
81
|
+
end
|
82
|
+
|
83
|
+
class Note < IMWObject
|
84
|
+
def to_pair()
|
85
|
+
{ self.handle => self.desc }
|
86
|
+
end
|
87
|
+
def to_icss()
|
88
|
+
to_pair
|
89
|
+
end
|
90
|
+
def self.from_icss(pair)
|
91
|
+
self.new Hash.zip([:handle,:desc], pair.to_pair)
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
|
96
|
+
class TagList
|
97
|
+
def self.from_icss(str)
|
98
|
+
self.from(str)
|
99
|
+
end
|
100
|
+
def to_icss()
|
101
|
+
self.to_s
|
102
|
+
end
|
103
|
+
def to_csv(parent_id=nil)
|
104
|
+
[self.to_s]
|
105
|
+
end
|
106
|
+
|
107
|
+
def handle() to_s end
|
108
|
+
end
|
109
|
+
|
110
|
+
|
111
|
+
|
112
|
+
# You acquire the vision of a sharp-eyed tanzier. We'll just assume that's good.
|
@@ -0,0 +1,117 @@
|
|
1
|
+
# #
|
2
|
+
# # views
|
3
|
+
# #
|
4
|
+
# require 'imw/view/db_infochimps'
|
5
|
+
#
|
6
|
+
|
7
|
+
|
8
|
+
#
|
9
|
+
# This is where views of the metadata will go (right now it's all just
|
10
|
+
# sitting in a crapheap within model.rb).
|
11
|
+
#
|
12
|
+
# we'll have routines for
|
13
|
+
#
|
14
|
+
# - dumping/undumping to yaml
|
15
|
+
# - dumping/undumping to files that load right into the ics database.
|
16
|
+
#
|
17
|
+
class IMWBase
|
18
|
+
|
19
|
+
def self.from_icss(hsh)
|
20
|
+
# simply dumpable objects
|
21
|
+
self._attr_has_one.map(&:to_s).each do |attr|
|
22
|
+
if (val = hsh.delete(attr.to_s))
|
23
|
+
hsh[attr] = get_attr_class(attr).from_icss(val)
|
24
|
+
end
|
25
|
+
end
|
26
|
+
# lists of dumpables
|
27
|
+
self._attr_manys.each do |attr|
|
28
|
+
if (vals = hsh.delete(attr.to_s))
|
29
|
+
hsh[attr] = vals.map{ |val| get_attr_class(attr).from_icss(val) }
|
30
|
+
end
|
31
|
+
end
|
32
|
+
self.new(hsh)
|
33
|
+
end
|
34
|
+
|
35
|
+
# Dump as a plain hash
|
36
|
+
def to_icss()
|
37
|
+
hsh = instance_values
|
38
|
+
# simply dumpable objects
|
39
|
+
self.class._attr_has_one.map(&:to_s).each do |attr|
|
40
|
+
(v=hsh.delete attr) && hsh[attr] = v.to_icss
|
41
|
+
end
|
42
|
+
# lists of dumpable objects
|
43
|
+
self.class._attr_manys.each do |attr|
|
44
|
+
hsh[attr] = (hsh.delete(attr)||[]).map{ |a| a.to_icss() }
|
45
|
+
end
|
46
|
+
hsh
|
47
|
+
end
|
48
|
+
|
49
|
+
# Pivot from object to relational view
|
50
|
+
def to_csv(parent_id=nil)
|
51
|
+
tables = {}
|
52
|
+
sub_ids = []
|
53
|
+
my_cl = self.class.to_s
|
54
|
+
self.class._attr_has_one.map(&:to_s).sort.each do |attr|
|
55
|
+
# Banks the object
|
56
|
+
obj = self[attr]
|
57
|
+
cl = self.class.get_attr_class(attr).to_s
|
58
|
+
tables[attr] ||= [] ; tables[attr].push( obj.to_csv(id) )
|
59
|
+
# tie the parent and child together
|
60
|
+
join = "%s_%s" % [my_cl, cl].sort
|
61
|
+
tables[join] ||= [] ; tables[join].push( [id, obj.id] )
|
62
|
+
sub_ids.push obj.handle
|
63
|
+
end
|
64
|
+
|
65
|
+
self.class._attr_manys.sort.each do |attr|
|
66
|
+
objs = self[attr] or next
|
67
|
+
cl = self.class.get_attr_class(attr).to_s
|
68
|
+
tables[attr] ||= []
|
69
|
+
join = "%s_%s" % [my_cl, cl.to_s].sort
|
70
|
+
tables[join] ||= []
|
71
|
+
objs.each do |obj|
|
72
|
+
tables[attr].push(obj.to_csv(id))
|
73
|
+
tables[join].push(id, obj.id)
|
74
|
+
sub_ids.push obj.handle
|
75
|
+
end
|
76
|
+
end
|
77
|
+
|
78
|
+
|
79
|
+
tables[self.class.to_s] = [
|
80
|
+
[self.id, parent_id].compact +
|
81
|
+
slice(self.class._attr_scalar - [:id]) +
|
82
|
+
sub_ids
|
83
|
+
].zip(['id', 'pid']+(self.class._attr_scalar - [:id])+self.class._attr_has_one.map(&:to_s).sort)
|
84
|
+
tables
|
85
|
+
end
|
86
|
+
|
87
|
+
end
|
88
|
+
|
89
|
+
class Note < IMWBase
|
90
|
+
# { :format_name => {}, ... } -- must be a hash
|
91
|
+
def to_pair()
|
92
|
+
{ self.handle => self.desc }
|
93
|
+
end
|
94
|
+
def to_icss()
|
95
|
+
to_pair
|
96
|
+
end
|
97
|
+
def self.from_icss(pair)
|
98
|
+
self.new Hash.zip([:handle,:desc], pair.to_pair)
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
|
103
|
+
class TagList
|
104
|
+
def self.from_icss(str)
|
105
|
+
self.from(str)
|
106
|
+
end
|
107
|
+
def to_icss()
|
108
|
+
self.to_s
|
109
|
+
end
|
110
|
+
def to_csv(parent_id=nil)
|
111
|
+
[self.to_s]
|
112
|
+
end
|
113
|
+
|
114
|
+
def handle() to_s end
|
115
|
+
end
|
116
|
+
|
117
|
+
|
@@ -0,0 +1,131 @@
|
|
1
|
+
ID,Name,Genus,Species
|
2
|
+
001,Gray-bellied Night Monkey,Aotus,lemurinus
|
3
|
+
002,Panamanian Night Monkey,Aotus,zonalis
|
4
|
+
003,Hernández-Camacho's Night Monkey,Aotus,jorgehernandezi
|
5
|
+
004,Gray-handed Night Monkey,Aotus,griseimembra
|
6
|
+
005,Hershkovitz's Night Monkey,Aotus,hershkovitzi
|
7
|
+
006,Brumback's Night Monkey,Aotus,brumbacki
|
8
|
+
007,Three-striped Night Monkey,Aotus,trivirgatus
|
9
|
+
008,Spix's Night Monkey,Aotus,vociferans
|
10
|
+
009,Malaysian Lar Gibbon,Hylobates,lar lar
|
11
|
+
010,Carpenter's Lar Gibbon,Hylobates,lar carpenteri
|
12
|
+
011,Central Lar Gibbon,Hylobates,lar entelloides
|
13
|
+
012,Sumatran Lar Gibbon,Hylobates,lar vestitus
|
14
|
+
013,Yunnan Lar Gibbon,Hylobates,lar yunnanensis
|
15
|
+
014,Mountain Agile Gibbon,Hylobates,agilis agilis
|
16
|
+
015,Bornean White-bearded Gibbon,Hylobates,agilis albibarbis
|
17
|
+
016,Lowland Agile Gibbon,Hylobates,agilis unko
|
18
|
+
017,Müller's Gray Gibbon,Hylobates,muelleri muelleri
|
19
|
+
018,Abbott's Gray Gibbon,Hylobates,muelleri abbotti
|
20
|
+
019,Northern Gray Gibbon,Hylobates,muelleri funereus
|
21
|
+
020,Black Tamarin,Saguinas,niger
|
22
|
+
021,Black-mantled Tamarin,Saguinas,nigricollis
|
23
|
+
022,Brown-mantled Tamarin,Saguinas,fuscicollis
|
24
|
+
023,Cottontop Tamarin or Pinché Tamarin,Saguinas,oedipus
|
25
|
+
024,Emperor Tamarin,Saguinas,imperator
|
26
|
+
025,Geoffroy's Tamarin,Saguinas,geoffroyi
|
27
|
+
026,Golden-mantled Tamarin,Saguinas,tripartitus
|
28
|
+
027,Graells's Tamarin,Saguinas,graellsi
|
29
|
+
028,Martins's Tamarin,Saguinas,martinsi
|
30
|
+
029,Mottle-faced Tamarin,Saguinas,inustus
|
31
|
+
030,Moustached Tamarin,Saguinas,mystax
|
32
|
+
031,Pied Tamarin,Saguinas,bicolor
|
33
|
+
032,Red-capped Tamarin,Saguinas,pileatus
|
34
|
+
033,Red-handed Tamarin,Saguinas,midas
|
35
|
+
034,White-footed Tamarin,Saguinas,leucopus
|
36
|
+
035,White-lipped Tamarin,Saguinas,labiatus
|
37
|
+
036,White-mantled Tamarin,Saguinas,melanoleucus
|
38
|
+
037,Allen's Swamp Monkey,Allenopithecus,nigroviridis
|
39
|
+
038,Angolan Talapoin,Miopithecus,talapoin
|
40
|
+
039,Gabon Talapoin,Miopithecus,ogouensis
|
41
|
+
040,Patas Monkey,Erythrocebus,patas
|
42
|
+
041,Green Monkey,Chlorocebus,sabaeus
|
43
|
+
042,Grivet,Chlorocebus,aethiops
|
44
|
+
043,Bale Mountains Vervet,Chlorocebus,djamdjamensis
|
45
|
+
044,Tantalus Monkey,Chlorocebus,tantalus
|
46
|
+
045,Vervet Monkey,Chlorocebus,pygerythrus
|
47
|
+
046,Malbrouck,Chlorocebus,cynosuros
|
48
|
+
047,Dryas Monkey or Salongo Monkey,Cercopithecus,dryas
|
49
|
+
048,Diana Monkey,Cercopithecus,diana
|
50
|
+
049,Roloway Monkey,Cercopithecus,roloway
|
51
|
+
050,Greater Spot-nosed Monkey,Cercopithecus,nictitans
|
52
|
+
051,Blue Monkey,Cercopithecus,mitis
|
53
|
+
052,Silver Monkey,Cercopithecus,doggetti
|
54
|
+
053,Golden Monkey,Cercopithecus,kandti
|
55
|
+
054,Sykes's Monkey,Cercopithecus,albogularis
|
56
|
+
055,Mona Monkey,Cercopithecus,mona
|
57
|
+
056,Campbell's Mona Monkey,Cercopithecus,campbelli
|
58
|
+
057,Lowe's Mona Monkey,Cercopithecus,lowei
|
59
|
+
058,Crested Mona Monkey,Cercopithecus,pogonias
|
60
|
+
059,Wolf's Mona Monkey,Cercopithecus,wolfi
|
61
|
+
060,Dent's Mona Monkey,Cercopithecus,denti
|
62
|
+
061,Lesser Spot-nosed Monkey,Cercopithecus,petaurista
|
63
|
+
062,White-throated Guenon,Cercopithecus,erythrogaster
|
64
|
+
063,Sclater's Guenon,Cercopithecus,sclateri
|
65
|
+
064,Red-eared Guenon,Cercopithecus,erythrotis
|
66
|
+
065,Moustached Guenon,Cercopithecus,cephus
|
67
|
+
066,Red-tailed Monkey,Cercopithecus,ascanius
|
68
|
+
067,L'Hoest's Monkey,Cercopithecus,lhoesti
|
69
|
+
068,Preuss's Monkey,Cercopithecus,preussi
|
70
|
+
069,Sun-tailed Monkey,Cercopithecus,solatus
|
71
|
+
070,Hamlyn's Monkey,Cercopithecus,hamlyni
|
72
|
+
071,De Brazza's Monkey,Cercopithecus,neglectus
|
73
|
+
072,Barbary Macaque,Macaca,sylvanus
|
74
|
+
073,Lion-tailed Macaque,Macaca,silenus
|
75
|
+
074,Southern Pig-tailed Macaque or Beruk,Macaca,nemestrina
|
76
|
+
075,Northern Pig-tailed Macaque,Macaca,leonina
|
77
|
+
076,Pagai Island Macaque or Bokkoi,Macaca,pagensis
|
78
|
+
077,Siberut Macaque,Macaca,siberu
|
79
|
+
078,Moor Macaque,Macaca,maura
|
80
|
+
079,Booted Macaque,Macaca,ochreata
|
81
|
+
080,Tonkean Macaque,Macaca,tonkeana
|
82
|
+
081,Heck's Macaque,Macaca,hecki
|
83
|
+
082,Gorontalo Macaque,Macaca,nigrescens
|
84
|
+
083,Celebes Crested Macaque or Black "Ape",Macaca,nigra
|
85
|
+
084,Crab-eating Macaque or Long-tailed Macaque or Kera,Macaca,fascicularis
|
86
|
+
085,Stump-tailed Macaque or Bear Macaque,Macaca,arctoides
|
87
|
+
086,Rhesus Macaque,Macaca,mulatta
|
88
|
+
087,Formosan Rock Macaque,Macaca,cyclopis
|
89
|
+
088,Japanese Macaque,Macaca,fuscata
|
90
|
+
089,Toque Macaque,Macaca,sinica
|
91
|
+
090,Bonnet Macaque,Macaca,radiata
|
92
|
+
091,Assam Macaque,Macaca,assamensis
|
93
|
+
092,Tibetan Macaque or Milne-Edwards' Macaque,Macaca,thibetana
|
94
|
+
093,Arunachal Macaque or Munzala,Macaca,munzala
|
95
|
+
094,Grey-cheeked Mangabey,Lophocebus,albigena
|
96
|
+
095,Black Crested Mangabey,Lophocebus,aterrimus
|
97
|
+
096,Opdenbosch's Mangabey,Lophocebus,opdenboschi
|
98
|
+
097,Uganda Mangabey,Lophocebus,ugandae
|
99
|
+
098,Johnston's Mangabey,Lophocebus,johnstoni
|
100
|
+
099,Osman Hill's Mangabey,Lophocebus,osmani
|
101
|
+
100,Kipunji,Rungwecebus,kipunji
|
102
|
+
101,Hamadryas Baboon,Papio,hamadryas
|
103
|
+
102,Guinea Baboon,Papio,papio
|
104
|
+
103,Olive Baboon,Papio,anubis
|
105
|
+
104,Yellow Baboon,Papio,cynocephalus
|
106
|
+
105,Chacma Baboon,Papio,ursinus
|
107
|
+
106,Gelada,Theropithecus,gelada
|
108
|
+
107,Sooty Mangabey,Cercocebus,atys
|
109
|
+
108,Collared Mangabey,Cercocebus,torquatus
|
110
|
+
109,Agile Mangabey,Cercocebus,agilis
|
111
|
+
110,Golden-bellied Mangabey,Cercocebus,chrysogaster
|
112
|
+
111,Tana River Mangabey,Cercocebus,galeritus
|
113
|
+
112,Sanje Mangabey,Cercocebus,sanjei
|
114
|
+
113,Mandrill,Mandrillus,sphinx
|
115
|
+
114,Drill,Mandrillus,leucophaeus
|
116
|
+
115,Black Colobus,Colobus,satanas
|
117
|
+
116,Angola Colobus,Colobus,angolensis
|
118
|
+
117,King Colobus,Colobus,polykomos
|
119
|
+
118,Ursine Colobus,Colobus,vellerosus
|
120
|
+
119,Mantled Guereza,Colobus,guereza
|
121
|
+
120,Western Red Colobus,Piliocolobus,badius
|
122
|
+
121,Pennant's Colobus,Piliocolobus,pennantii
|
123
|
+
122,Preuss's Red Colobus,Piliocolobus,preussi
|
124
|
+
123,Thollon's Red Colobus,Piliocolobus,tholloni
|
125
|
+
124,Central African Red Colobus,Piliocolobus,foai
|
126
|
+
125,Ugandan Red Colobus,Piliocolobus,tephrosceles
|
127
|
+
126,Uzungwa Red Colobus,Piliocolobus,gordonorum
|
128
|
+
127,Zanzibar Red Colobus,Piliocolobus,kirkii
|
129
|
+
128,Tana River Red Colobus,Piliocolobus,rufomitratus
|
130
|
+
129,Olive Colobus,Procolobus,verus
|
131
|
+
130,Maroon Leaf Monkey,Presbytis,rubicunda
|
@@ -0,0 +1,131 @@
|
|
1
|
+
ID Name Genus Species
|
2
|
+
001 Gray-bellied Night Monkey Aotus lemurinus
|
3
|
+
002 Panamanian Night Monkey Aotus zonalis
|
4
|
+
003 Hernández-Camacho's Night Monkey Aotus jorgehernandezi
|
5
|
+
004 Gray-handed Night Monkey Aotus griseimembra
|
6
|
+
005 Hershkovitz's Night Monkey Aotus hershkovitzi
|
7
|
+
006 Brumback's Night Monkey Aotus brumbacki
|
8
|
+
007 Three-striped Night Monkey Aotus trivirgatus
|
9
|
+
008 Spix's Night Monkey Aotus vociferans
|
10
|
+
009 Malaysian Lar Gibbon Hylobates lar lar
|
11
|
+
010 Carpenter's Lar Gibbon Hylobates lar carpenteri
|
12
|
+
011 Central Lar Gibbon Hylobates lar entelloides
|
13
|
+
012 Sumatran Lar Gibbon Hylobates lar vestitus
|
14
|
+
013 Yunnan Lar Gibbon Hylobates lar yunnanensis
|
15
|
+
014 Mountain Agile Gibbon Hylobates agilis agilis
|
16
|
+
015 Bornean White-bearded Gibbon Hylobates agilis albibarbis
|
17
|
+
016 Lowland Agile Gibbon Hylobates agilis unko
|
18
|
+
017 Müller's Gray Gibbon Hylobates muelleri muelleri
|
19
|
+
018 Abbott's Gray Gibbon Hylobates muelleri abbotti
|
20
|
+
019 Northern Gray Gibbon Hylobates muelleri funereus
|
21
|
+
020 Black Tamarin Saguinas niger
|
22
|
+
021 Black-mantled Tamarin Saguinas nigricollis
|
23
|
+
022 Brown-mantled Tamarin Saguinas fuscicollis
|
24
|
+
023 Cottontop Tamarin or Pinché Tamarin Saguinas oedipus
|
25
|
+
024 Emperor Tamarin Saguinas imperator
|
26
|
+
025 Geoffroy's Tamarin Saguinas geoffroyi
|
27
|
+
026 Golden-mantled Tamarin Saguinas tripartitus
|
28
|
+
027 Graells's Tamarin Saguinas graellsi
|
29
|
+
028 Martins's Tamarin Saguinas martinsi
|
30
|
+
029 Mottle-faced Tamarin Saguinas inustus
|
31
|
+
030 Moustached Tamarin Saguinas mystax
|
32
|
+
031 Pied Tamarin Saguinas bicolor
|
33
|
+
032 Red-capped Tamarin Saguinas pileatus
|
34
|
+
033 Red-handed Tamarin Saguinas midas
|
35
|
+
034 White-footed Tamarin Saguinas leucopus
|
36
|
+
035 White-lipped Tamarin Saguinas labiatus
|
37
|
+
036 White-mantled Tamarin Saguinas melanoleucus
|
38
|
+
037 Allen's Swamp Monkey Allenopithecus nigroviridis
|
39
|
+
038 Angolan Talapoin Miopithecus talapoin
|
40
|
+
039 Gabon Talapoin Miopithecus ogouensis
|
41
|
+
040 Patas Monkey Erythrocebus patas
|
42
|
+
041 Green Monkey Chlorocebus sabaeus
|
43
|
+
042 Grivet Chlorocebus aethiops
|
44
|
+
043 Bale Mountains Vervet Chlorocebus djamdjamensis
|
45
|
+
044 Tantalus Monkey Chlorocebus tantalus
|
46
|
+
045 Vervet Monkey Chlorocebus pygerythrus
|
47
|
+
046 Malbrouck Chlorocebus cynosuros
|
48
|
+
047 Dryas Monkey or Salongo Monkey Cercopithecus dryas
|
49
|
+
048 Diana Monkey Cercopithecus diana
|
50
|
+
049 Roloway Monkey Cercopithecus roloway
|
51
|
+
050 Greater Spot-nosed Monkey Cercopithecus nictitans
|
52
|
+
051 Blue Monkey Cercopithecus mitis
|
53
|
+
052 Silver Monkey Cercopithecus doggetti
|
54
|
+
053 Golden Monkey Cercopithecus kandti
|
55
|
+
054 Sykes's Monkey Cercopithecus albogularis
|
56
|
+
055 Mona Monkey Cercopithecus mona
|
57
|
+
056 Campbell's Mona Monkey Cercopithecus campbelli
|
58
|
+
057 Lowe's Mona Monkey Cercopithecus lowei
|
59
|
+
058 Crested Mona Monkey Cercopithecus pogonias
|
60
|
+
059 Wolf's Mona Monkey Cercopithecus wolfi
|
61
|
+
060 Dent's Mona Monkey Cercopithecus denti
|
62
|
+
061 Lesser Spot-nosed Monkey Cercopithecus petaurista
|
63
|
+
062 White-throated Guenon Cercopithecus erythrogaster
|
64
|
+
063 Sclater's Guenon Cercopithecus sclateri
|
65
|
+
064 Red-eared Guenon Cercopithecus erythrotis
|
66
|
+
065 Moustached Guenon Cercopithecus cephus
|
67
|
+
066 Red-tailed Monkey Cercopithecus ascanius
|
68
|
+
067 L'Hoest's Monkey Cercopithecus lhoesti
|
69
|
+
068 Preuss's Monkey Cercopithecus preussi
|
70
|
+
069 Sun-tailed Monkey Cercopithecus solatus
|
71
|
+
070 Hamlyn's Monkey Cercopithecus hamlyni
|
72
|
+
071 De Brazza's Monkey Cercopithecus neglectus
|
73
|
+
072 Barbary Macaque Macaca sylvanus
|
74
|
+
073 Lion-tailed Macaque Macaca silenus
|
75
|
+
074 Southern Pig-tailed Macaque or Beruk Macaca nemestrina
|
76
|
+
075 Northern Pig-tailed Macaque Macaca leonina
|
77
|
+
076 Pagai Island Macaque or Bokkoi Macaca pagensis
|
78
|
+
077 Siberut Macaque Macaca siberu
|
79
|
+
078 Moor Macaque Macaca maura
|
80
|
+
079 Booted Macaque Macaca ochreata
|
81
|
+
080 Tonkean Macaque Macaca tonkeana
|
82
|
+
081 Heck's Macaque Macaca hecki
|
83
|
+
082 Gorontalo Macaque Macaca nigrescens
|
84
|
+
083 Celebes Crested Macaque or Black "Ape" Macaca nigra
|
85
|
+
084 Crab-eating Macaque or Long-tailed Macaque or Kera Macaca fascicularis
|
86
|
+
085 Stump-tailed Macaque or Bear Macaque Macaca arctoides
|
87
|
+
086 Rhesus Macaque Macaca mulatta
|
88
|
+
087 Formosan Rock Macaque Macaca cyclopis
|
89
|
+
088 Japanese Macaque Macaca fuscata
|
90
|
+
089 Toque Macaque Macaca sinica
|
91
|
+
090 Bonnet Macaque Macaca radiata
|
92
|
+
091 Assam Macaque Macaca assamensis
|
93
|
+
092 Tibetan Macaque or Milne-Edwards' Macaque Macaca thibetana
|
94
|
+
093 Arunachal Macaque or Munzala Macaca munzala
|
95
|
+
094 Grey-cheeked Mangabey Lophocebus albigena
|
96
|
+
095 Black Crested Mangabey Lophocebus aterrimus
|
97
|
+
096 Opdenbosch's Mangabey Lophocebus opdenboschi
|
98
|
+
097 Uganda Mangabey Lophocebus ugandae
|
99
|
+
098 Johnston's Mangabey Lophocebus johnstoni
|
100
|
+
099 Osman Hill's Mangabey Lophocebus osmani
|
101
|
+
100 Kipunji Rungwecebus kipunji
|
102
|
+
101 Hamadryas Baboon Papio hamadryas
|
103
|
+
102 Guinea Baboon Papio papio
|
104
|
+
103 Olive Baboon Papio anubis
|
105
|
+
104 Yellow Baboon Papio cynocephalus
|
106
|
+
105 Chacma Baboon Papio ursinus
|
107
|
+
106 Gelada Theropithecus gelada
|
108
|
+
107 Sooty Mangabey Cercocebus atys
|
109
|
+
108 Collared Mangabey Cercocebus torquatus
|
110
|
+
109 Agile Mangabey Cercocebus agilis
|
111
|
+
110 Golden-bellied Mangabey Cercocebus chrysogaster
|
112
|
+
111 Tana River Mangabey Cercocebus galeritus
|
113
|
+
112 Sanje Mangabey Cercocebus sanjei
|
114
|
+
113 Mandrill Mandrillus sphinx
|
115
|
+
114 Drill Mandrillus leucophaeus
|
116
|
+
115 Black Colobus Colobus satanas
|
117
|
+
116 Angola Colobus Colobus angolensis
|
118
|
+
117 King Colobus Colobus polykomos
|
119
|
+
118 Ursine Colobus Colobus vellerosus
|
120
|
+
119 Mantled Guereza Colobus guereza
|
121
|
+
120 Western Red Colobus Piliocolobus badius
|
122
|
+
121 Pennant's Colobus Piliocolobus pennantii
|
123
|
+
122 Preuss's Red Colobus Piliocolobus preussi
|
124
|
+
123 Thollon's Red Colobus Piliocolobus tholloni
|
125
|
+
124 Central African Red Colobus Piliocolobus foai
|
126
|
+
125 Ugandan Red Colobus Piliocolobus tephrosceles
|
127
|
+
126 Uzungwa Red Colobus Piliocolobus gordonorum
|
128
|
+
127 Zanzibar Red Colobus Piliocolobus kirkii
|
129
|
+
128 Tana River Red Colobus Piliocolobus rufomitratus
|
130
|
+
129 Olive Colobus Procolobus verus
|
131
|
+
130 Maroon Leaf Monkey Presbytis rubicunda
|