rika 0.9.8-java → 0.9.9-java

Sign up to get free protection for your applications and to get access to all the features.
data/README.md CHANGED
@@ -48,6 +48,15 @@ Something like this:
48
48
  # Return content from URL
49
49
  parser = Rika::Parser.new('http://riakhandbook.com/sample.pdf', 200)
50
50
  parser.content
51
+
52
+ # Return the language for the content
53
+ parser = parser = Rika::Parser.new('german document.pdf')
54
+ parser.language
55
+ => "de"
56
+
57
+ # Check whether the langugage identification is certain enough to be trusted
58
+ parser.language_is_reasonably_certain?
59
+
51
60
  ```
52
61
  ## Contributing
53
62
 
data/lib/rika.rb CHANGED
@@ -15,6 +15,7 @@ end
15
15
  module Rika
16
16
  import org.apache.tika.metadata.Metadata
17
17
  import org.apache.tika.Tika
18
+ import org.apache.tika.language.LanguageIdentifier
18
19
  import java.io.FileInputStream
19
20
  import java.net.URL
20
21
 
@@ -62,6 +63,18 @@ module Rika
62
63
  @input_type == :file
63
64
  end
64
65
 
66
+ def language
67
+ @lang ||= LanguageIdentifier.new(content)
68
+
69
+ @lang.language
70
+ end
71
+
72
+ def language_is_reasonably_certain?
73
+ @lang ||= LanguageIdentifier.new(content)
74
+
75
+ @lang.is_reasonably_certain
76
+ end
77
+
65
78
  protected
66
79
 
67
80
  def parse
data/lib/rika/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Rika
2
- VERSION = "0.9.8"
2
+ VERSION = "0.9.9"
3
3
  end
@@ -0,0 +1 @@
1
+ Er hörte leise Schritte hinter sich. Das bedeutete nichts Gutes. Wer würde ihm schon folgen, spät in der Nacht und dazu noch in dieser engen Gasse mitten im übel beleumundeten Hafenviertel? Gerade jetzt, wo er das Ding seines Lebens gedreht hatte und mit der Beute verschwinden wollte! Hatte einer seiner zahllosen Kollegen dieselbe Idee gehabt, ihn beobachtet und abgewartet, um ihn nun um die Früchte seiner Arbeit zu erleichtern? Oder gehörten die Schritte hinter ihm zu einem der unzähligen Gesetzeshüter dieser Stadt, und die stählerne Acht um seine Handgelenke würde gleich zuschnappen? Er konnte die Aufforderung stehen zu bleiben schon hören. Gehetzt sah er sich um. Plötzlich erblickte er den schmalen Durchgang. Blitzartig drehte er sich nach rechts und verschwand zwischen den beiden Gebäuden. Beinahe wäre er dabei über den umgestürzten Mülleimer gefallen, der mitten im Weg lag. Er versuchte, sich in der Dunkelheit seinen Weg zu ertasten und erstarrte: Anscheinend gab es keinen anderen Ausweg aus diesem kleinen Hof als den Durchgang, durch den er gekommen war. Die Schritte wurden lauter und lauter, er sah eine dunkle Gestalt um die Ecke biegen. Fieberhaft irrten seine Augen durch die nächtliche Dunkelheit und suchten einen Ausweg. War jetzt wirklich alles vorbei,
@@ -0,0 +1 @@
1
+ Far far away, behind the word mountains, far from the countries Vokalia and Consonantia, there live the blind texts. Separated they live in Bookmarksgrove right at the coast of the Semantics, a large language ocean. A small river named Duden flows by their place and supplies it with the necessary regelialia. It is a paradisematic country, in which roasted parts of sentences fly into your mouth. Even the all-powerful Pointing has no control about the blind texts it is an almost unorthographic life One day however a small line of blind text by the name of Lorem Ipsum decided to leave for the far World of Grammar. The Big Oxmox advised her not to do so, because there were thousands of bad Commas, wild Question Marks and devious Semikoli, but the Little Blind Text didn’t listen. She packed her seven versalia, put her initial into the belt and made herself on the way. When she reached the first hills of the Italic Mountains, she had a last view back on the skyline of her hometown Bookmarksgrove, the headline of Alphabet Village and the subline of her own road, the Line Lane. Pityful a rethoric question ran over her cheek, then
@@ -0,0 +1 @@
1
+ Una mañana, tras un sueño intranquilo, Gregorio Samsa se despertó convertido en un monstruoso insecto. Estaba echado de espaldas sobre un duro caparazón y, al alzar la cabeza, vio su vientre convexo y oscuro, surcado por curvadas callosidades, sobre el que casi no se aguantaba la colcha, que estaba a punto de escurrirse hasta el suelo. Numerosas patas, penosamente delgadas en comparación con el grosor normal de sus piernas, se agitaban sin concierto. - ¿Qué me ha ocurrido? No estaba soñando. Su habitación, una habitación normal, aunque muy pequeña, tenía el aspecto habitual. Sobre la mesa había desparramado un muestrario de paños - Samsa era viajante de comercio-, y de la pared colgaba una estampa recientemente recortada de una revista ilustrada y puesta en un marco dorado. La estampa mostraba a una mujer tocada con un gorro de pieles, envuelta en una estola también de pieles, y que, muy erguida, esgrimía un amplio manguito, asimismo de piel, que ocultaba todo su antebrazo. Gregorio miró hacia la ventana; estaba nublado, y sobre el cinc del alféizar repiqueteaban las gotas de lluvia, lo que le hizo sentir una gran melancolía. «Bueno -pensó-; ¿y si siguiese durmiendo un rato y me olvidase de
@@ -0,0 +1 @@
1
+ En se réveillant un matin après des rêves agités, Gregor Samsa se retrouva, dans son lit, métamorphosé en un monstrueux insecte. Il était sur le dos, un dos aussi dur qu’une carapace, et, en relevant un peu la tête, il vit, bombé, brun, cloisonné par des arceaux plus rigides, son abdomen sur le haut duquel la couverture, prête à glisser tout à fait, ne tenait plus qu’à peine. Ses nombreuses pattes, lamentablement grêles par comparaison avec la corpulence qu’il avait par ailleurs, grouillaient désespérément sous ses yeux.« Qu’est-ce qui m’est arrivé ? » pensa-t-il. Ce n’était pas un rêve. Sa chambre, une vraie chambre humaine, juste un peu trop petite, était là tranquille entre les quatre murs qu’il connaissait bien. Au-dessus de la table où était déballée une collection d’échantillons de tissus - Samsa était représentant de commerce - on voyait accrochée l’image qu’il avait récemment découpée dans un magazine et mise dans un joli cadre doré. Elle représentait une dame munie d’une toque et d’un boa tous les deux en fourrure et qui, assise bien droite, tendait vers le spectateur un lourd manchon de fourrure où tout son avant-bras avait disparu. Le regard de Gregor se tourna ensuite vers
@@ -0,0 +1 @@
1
+ hej
@@ -0,0 +1 @@
1
+ Любя, съешь щипцы, — вздохнёт мэр, — кайф жгуч. Шеф взъярён тчк щипцы с эхом гудбай Жюль. Эй, жлоб! Где туз? Прячь юных съёмщиц в шкаф. Экс-граф? Плюш изъят. Бьём чуждый цен хвощ! Эх, чужак! Общий съём цен шляп (юфть) — вдрызг! Любя, съешь щипцы, — вздохнёт мэр, — кайф жгуч. Шеф взъярён тчк щипцы с эхом гудбай Жюль. Эй, жлоб! Где туз? Прячь юных съёмщиц в шкаф. Экс-граф? Плюш изъят. Бьём чуждый цен хвощ! Эх, чужак! Общий съём цен шляп (юфть) — вдрызг! Любя, съешь щипцы, — вздохнёт мэр, — кайф жгуч. Шеф взъярён тчк щипцы с эхом гудбай Жюль. Эй, жлоб! Где туз? Прячь юных съёмщиц в шкаф. Экс-граф? Плюш изъят. Бьём чуждый цен хвощ! Эх, чужак! Общий съём цен шляп (юфть) — вдрызг! Любя, съешь щипцы, — вздохнёт мэр, — кайф жгуч. Шеф взъярён тчк щипцы с эхом гудбай Жюль. Эй, жлоб! Где туз? Прячь юных съёмщиц в шкаф. Экс-граф? Плюш изъят. Бьём чуждый цен хвощ! Эх, чужак! Общий съём цен шляп (юфть) — вдрызг!Любя, съешь щипцы, — вздохнёт мэр, — кайф жгуч. Шеф взъярён тчк щипцы с эхом гудбай Жюль. Эй, жлоб! Где туз? Прячь юных съёмщиц в шкаф. Экс-граф? Плюш изъят. Бьём чуждый цен
data/spec/rika_spec.rb CHANGED
@@ -151,4 +151,26 @@ describe Rika::Parser do
151
151
  @unknown_parser.media_type.should == "application/octet-stream"
152
152
  end
153
153
  end
154
- end
154
+
155
+ describe '#language' do
156
+ it "should return the language of the content" do
157
+
158
+ ["en", "de", "fr", "ru", "es"].each do |lang|
159
+ txt = Rika::Parser.new(file_path("#{lang}.txt"))
160
+ txt.language.should == lang
161
+ end
162
+ end
163
+ end
164
+
165
+ describe '#language_is_reasonably_certain?' do
166
+ it "should return false if lang can't be determined" do
167
+ lang = Rika::Parser.new(file_path("lang_cant_be_determined.txt"))
168
+ lang.language_is_reasonably_certain? == false
169
+ end
170
+
171
+ it "should return true if language can be determined" do
172
+ lang = Rika::Parser.new(file_path("en.txt"))
173
+ lang.language_is_reasonably_certain? == true
174
+ end
175
+ end
176
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rika
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.8
4
+ version: 0.9.9
5
5
  prerelease:
6
6
  platform: java
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-01-25 00:00:00.000000000 Z
12
+ date: 2013-02-11 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
@@ -47,11 +47,17 @@ files:
47
47
  - lib/rika/version.rb
48
48
  - pom.xml
49
49
  - rika.gemspec
50
+ - spec/fixtures/de.txt
50
51
  - spec/fixtures/document.doc
51
52
  - spec/fixtures/document.docx
52
53
  - spec/fixtures/document.pdf
54
+ - spec/fixtures/en.txt
55
+ - spec/fixtures/es.txt
56
+ - spec/fixtures/fr.txt
53
57
  - spec/fixtures/image.jpg
58
+ - spec/fixtures/lang_cant_be_determined.txt
54
59
  - spec/fixtures/over_100k_file.txt
60
+ - spec/fixtures/ru.txt
55
61
  - spec/fixtures/text_file.txt
56
62
  - spec/fixtures/text_file_without_extension
57
63
  - spec/fixtures/unknown.bin
@@ -121,11 +127,17 @@ signing_key:
121
127
  specification_version: 3
122
128
  summary: A JRuby wrapper for Apache Tika to extract text and metadata from various file formats.
123
129
  test_files:
130
+ - spec/fixtures/de.txt
124
131
  - spec/fixtures/document.doc
125
132
  - spec/fixtures/document.docx
126
133
  - spec/fixtures/document.pdf
134
+ - spec/fixtures/en.txt
135
+ - spec/fixtures/es.txt
136
+ - spec/fixtures/fr.txt
127
137
  - spec/fixtures/image.jpg
138
+ - spec/fixtures/lang_cant_be_determined.txt
128
139
  - spec/fixtures/over_100k_file.txt
140
+ - spec/fixtures/ru.txt
129
141
  - spec/fixtures/text_file.txt
130
142
  - spec/fixtures/text_file_without_extension
131
143
  - spec/fixtures/unknown.bin