philologic-client 0.0.7 → 0.0.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/HISTORY.rdoc +4 -0
- data/README.rdoc +4 -2
- data/lib/philologic-client/version.rb +1 -1
- data/lib/philologic-client.rb +62 -3
- data/test/data/frequency_links.html +145 -0
- data/test/test_philologic_client.rb +109 -39
- metadata +18 -16
data/HISTORY.rdoc
CHANGED
data/README.rdoc
CHANGED
@@ -26,6 +26,9 @@
|
|
26
26
|
# Frequency search by arbitrary key-value pairs
|
27
27
|
client.frequency( :query => 'sartre', :foo => 1 ).each { |result| puts result }
|
28
28
|
|
29
|
+
# Links for first result in frequency table search
|
30
|
+
client.frequency('sartre').first.links.each { |link| puts link }
|
31
|
+
|
29
32
|
# Get/Set encoding
|
30
33
|
encoding = client.encoding
|
31
34
|
client.encoding = 'utf-8' # Default
|
@@ -51,9 +54,8 @@ https://github.com/blairc/philologic-client/
|
|
51
54
|
|
52
55
|
== To Do
|
53
56
|
|
54
|
-
* Add frequency table searching
|
55
57
|
* Add collocation table searching
|
56
58
|
* Add +children+ to Philologic::Document
|
57
59
|
* Add +parent+ to Philologic::Document
|
58
|
-
* Unify Philologic::
|
60
|
+
* Unify (as much as possible) Philologic::Document, Philologic::Key, Philologic::Link
|
59
61
|
|
data/lib/philologic-client.rb
CHANGED
@@ -34,6 +34,9 @@ require 'open-uri'
|
|
34
34
|
# # Frequency search by arbitrary key-value pairs
|
35
35
|
# client.frequency( :query => 'sartre', :foo => 1 ).each { |result| puts result }
|
36
36
|
#
|
37
|
+
# # Links for first result in frequency table search
|
38
|
+
# client.frequency('sartre').first.links.each { |link| puts link }
|
39
|
+
#
|
37
40
|
# # Get/Set encoding
|
38
41
|
# encoding = client.encoding
|
39
42
|
# client.encoding = 'utf-8' # Default
|
@@ -59,11 +62,10 @@ require 'open-uri'
|
|
59
62
|
#
|
60
63
|
# == To Do
|
61
64
|
#
|
62
|
-
# * Add frequency table searching
|
63
65
|
# * Add collocation table searching
|
64
66
|
# * Add +children+ to Philologic::Document
|
65
67
|
# * Add +parent+ to Philologic::Document
|
66
|
-
# * Unify Philologic::
|
68
|
+
# * Unify (as much as possible) Philologic::Document, Philologic::Key, Philologic::Link
|
67
69
|
#
|
68
70
|
module Philologic # :nodoc:
|
69
71
|
|
@@ -190,6 +192,14 @@ module Philologic # :nodoc:
|
|
190
192
|
return results
|
191
193
|
elsif !doc.css('div.philologic_object').first.nil?
|
192
194
|
return Philologic::Document.new( doc.css('div.philologic_object').first )
|
195
|
+
elsif !doc.css('table.philologic_frequency').first.nil?
|
196
|
+
results = []
|
197
|
+
doc.css('table.philologic_frequency').css('td.philologic_frequency_key').each do |key|
|
198
|
+
key.css('a').each do |a|
|
199
|
+
results << Philologic::Key.new(self, a) # TODO Why not a select?
|
200
|
+
end
|
201
|
+
end
|
202
|
+
return results
|
193
203
|
# TODO else
|
194
204
|
# warn "WARNING: could not parse document"
|
195
205
|
end
|
@@ -240,6 +250,56 @@ module Philologic # :nodoc:
|
|
240
250
|
end # class Philologic::Document
|
241
251
|
|
242
252
|
|
253
|
+
#
|
254
|
+
# Philologic key.
|
255
|
+
#
|
256
|
+
class Key
|
257
|
+
|
258
|
+
#
|
259
|
+
# Initialize Philologic::Key object.
|
260
|
+
#
|
261
|
+
# Params:
|
262
|
+
# +client+:: Philologic::Client object
|
263
|
+
# +document+:: Nokogiri document
|
264
|
+
#
|
265
|
+
def initialize(client, document)
|
266
|
+
@client = client
|
267
|
+
@doc = document
|
268
|
+
end
|
269
|
+
|
270
|
+
#
|
271
|
+
# Returns value of attribute +key+ or +nil+.
|
272
|
+
#
|
273
|
+
def [](key)
|
274
|
+
@doc.attributes.key?(key) ? @doc.attributes[key].value : nil
|
275
|
+
end
|
276
|
+
|
277
|
+
#
|
278
|
+
# Returns Philologic::Link objects referenced by this Philologic::Key object.
|
279
|
+
#
|
280
|
+
def links
|
281
|
+
q = self['href'].sub( %r{^\./\?}, '' ).split('&')
|
282
|
+
@client.search( Hash[ *q.collect { |v| v.split('=', 2) }.flatten ] )
|
283
|
+
end
|
284
|
+
|
285
|
+
#
|
286
|
+
# Returns key text.
|
287
|
+
#
|
288
|
+
def text
|
289
|
+
@text = @doc.text.lstrip.rstrip if @text.nil?
|
290
|
+
@text
|
291
|
+
end
|
292
|
+
|
293
|
+
#
|
294
|
+
# Return String representation of object.
|
295
|
+
#
|
296
|
+
def to_s
|
297
|
+
[ self['href'], self.text ].join(' | ')
|
298
|
+
end
|
299
|
+
|
300
|
+
end # class Philologic::Key
|
301
|
+
|
302
|
+
|
243
303
|
#
|
244
304
|
# Philologic link.
|
245
305
|
#
|
@@ -285,5 +345,4 @@ module Philologic # :nodoc:
|
|
285
345
|
|
286
346
|
end # class Philologic::Link
|
287
347
|
|
288
|
-
|
289
348
|
end # module Philologic
|
@@ -0,0 +1,145 @@
|
|
1
|
+
<html><head><title>TLFsorted: search for sartre</title></head><body><div class='philologic_concordance'><p class='description'>running query for sartre @ TLFsorted with arg 0. displaying 1 - 48 of 48 hits.</p><ol start='1'><li class='philologic_occurence'>
|
2
|
+
<a class='philologic_cite' href='./1839/3/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
3
|
+
... qui se destinait à la psychiatrie. À la surprise générale, Jean-Paul <span class="hilite">Sartre</span> avait échoué à l'écrit. Le concours me parut difficile, mais je ne perdis pas co...</li>
|
4
|
+
<li class='philologic_occurence'>
|
5
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
6
|
+
...ades. Je les connaissais presque tous. Seul me demeurait hermétique le clan formé par <span class="hilite">Sartre</span>, Nizan et Herbaud; ils ne frayaient avec personne; ils n'assistaient q...</li>
|
7
|
+
<li class='philologic_occurence'>
|
8
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
9
|
+
...lf et derrière ses grosses lunettes d'écaille je lui trouvais un regard très intimidant. <span class="hilite">Sartre</span> n'avait pas une mauvaise tête, mais on disait qu'il était le plus terrible des trois e...</li>
|
10
|
+
<li class='philologic_occurence'>
|
11
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
12
|
+
...me paraissait accessible: Herbaud. Il était marié lui aussi. En compagnie de <span class="hilite">Sartre</span> et de Nizan, il m'ignorait. Quand je le rencontrais seul, nous échangions ...</li>
|
13
|
+
<li class='philologic_occurence'>
|
14
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
15
|
+
...existerais jamais. Un après-midi, je l'avais aperçu rue Soufflot, accompagné de <span class="hilite">Sartre</span> et de Nizan, et donnant le bras à une femme en gris: je m'étais sentie exclue...</li>
|
16
|
+
<li class='philologic_occurence'>
|
17
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
18
|
+
...t il était monté à Paris pour préparer normale. Il avait connu en hypo-khâgne <span class="hilite">Sartre</span> et Nizan et il me parla beaucoup d'eux; il admirait Nizan, pour sa dis...</li>
|
19
|
+
<li class='philologic_occurence'>
|
20
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
21
|
+
...; il admirait Nizan, pour sa distinction désinvolte, mais il était surtout lié avec <span class="hilite">Sartre</span> qu'il disait prodigieusement intéressant. Nos autres condisciples, il les méprisai...</li>
|
22
|
+
<li class='philologic_occurence'>
|
23
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
24
|
+
...ditais ainsi sur mon destin, j'aperçus Herbaud qui longeait le bassin en compagnie de <span class="hilite">Sartre</span>: il me vit, et il m'ignora. Mystère et mensonge des journaux intimes: je ne mention...</li>
|
25
|
+
<li class='philologic_occurence'>
|
26
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
27
|
+
... la Sorbonne. Vêtu d'un costume d'été beige clair, il était assis à côté de <span class="hilite">Sartre</span> sur le rebord d'une fenêtre. Il me tendit la main, dans un long geste affectueux, e...</li>
|
28
|
+
<li class='philologic_occurence'>
|
29
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
30
|
+
...r en faisant allusion à notre rencontre, au Luxembourg; il aurait aimé me présenter <span class="hilite">Sartre</span>, "mais si je ne respecte pas les ruminations de Clairaut, dit-il, je ne me perm...</li>
|
31
|
+
<li class='philologic_occurence'>
|
32
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
33
|
+
... Il me remit, de la part de <span class="hilite">Sartre</span>, un dessin que celui-ci m'avait dédié et qui représentait: Leibniz au bai...</li>
|
34
|
+
<li class='philologic_occurence'>
|
35
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
36
|
+
...cosmologie eugénique", inventée à partir du potomak, et à laquelle il avait rallié <span class="hilite">Sartre</span> et Nizan; tous trois appartenaient à la plus haute caste, celle des eugènes, ...</li>
|
37
|
+
<li class='philologic_occurence'>
|
38
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
39
|
+
...le est très bien d'ailleurs votre voix, mais elle est rauque. Elle nous divertit beaucoup, <span class="hilite">Sartre</span> et moi." Je découvris que j'avais une démarche, une voix: c'était nouveau. J...</li>
|
40
|
+
<li class='philologic_occurence'>
|
41
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
42
|
+
...reuves; puis il comptait quitter Paris, et à son retour il préparerait son oral avec <span class="hilite">Sartre</span> et Nizan. Finies, nos rencontres à la nationale: comme j'allais les regret...</li>
|
43
|
+
<li class='philologic_occurence'>
|
44
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
45
|
+
...Orne; à son retour, dans une dizaine de jours, il préparerait l'oral du concours avec <span class="hilite">Sartre</span> et Nizan qui m'invitaient cordialement à me joindre à eux. D'ici là, ...</li>
|
46
|
+
<li class='philologic_occurence'>
|
47
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
48
|
+
...artre et Nizan qui m'invitaient cordialement à me joindre à eux. D'ici là, <span class="hilite">Sartre</span> voulait faire ma connaissance: il me proposait un rendez-vous pour un soir prochain. ...</li>
|
49
|
+
<li class='philologic_occurence'>
|
50
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
51
|
+
... Mais Herbaud me demanda de ne pas y aller: <span class="hilite">Sartre</span> profiterait de son absence pour m'accaparer." Je ne veux pas qu'on touche à mes pl...</li>
|
52
|
+
<li class='philologic_occurence'>
|
53
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
54
|
+
...nts " me dit Herbaud d'un ton complice. Nous décidâmes que ma soeur retrouverait <span class="hilite">Sartre</span> à l'heure et à l'endroit prévus; elle lui dirait que j'étais partie brusquement pour...</li>
|
55
|
+
<li class='philologic_occurence'>
|
56
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
57
|
+
... je flânai, je me donnai du bon temps. Pendant la soirée que Poupette passa avec <span class="hilite">Sartre</span>, je récapitulai joyeusement l'année qui venait de s'écouler, et toute ma jeunesse; je...</li>
|
58
|
+
<li class='philologic_occurence'>
|
59
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
60
|
+
...ent en ce monde. Quand ma soeur rentra, elle me félicita d'être restée à la maison. <span class="hilite">Sartre</span> avait courtoisement encaissé notre mensonge; il l'avait emmenée au cinéma et s'était...</li>
|
61
|
+
<li class='philologic_occurence'>
|
62
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
63
|
+
...tait montré très aimable; mais la conversation avait chômé." Tout ce qu'il raconte de <span class="hilite">Sartre</span>, Herbaud l'invente lui-même " me dit ma soeur qui connaissait un peu Herba...</li>
|
64
|
+
<li class='philologic_occurence'>
|
65
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
66
|
+
...travailler Leibniz. J'étais un peu effarouchée quand j'entrai dans la chambre de <span class="hilite">Sartre</span>; il y avait un grand désordre de livres et de papiers, des mégots dans tous les coins,...</li>
|
67
|
+
<li class='philologic_occurence'>
|
68
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
69
|
+
...and désordre de livres et de papiers, des mégots dans tous les coins, une énorme fumée. <span class="hilite">Sartre</span> m'accueillit mondainement; il fumait la pipe. Silencieux, une cigarette collée au c...</li>
|
70
|
+
<li class='philologic_occurence'>
|
71
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
72
|
+
...elai. Leibniz nous ennuyait et il fut décidé que nous le connaissions assez. <span class="hilite">Sartre</span> se chargea de nous expliquer le contrat social, sur lequel il avait des lumière...</li>
|
73
|
+
<li class='philologic_occurence'>
|
74
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
75
|
+
...ement Herbaud tandis que Nizan contemplait ses ongles d'un air absorbé; mais <span class="hilite">Sartre</span> avait toujours le dessus. Impossible de lui en vouloir: il se mettait en quatre pour...</li>
|
76
|
+
<li class='philologic_occurence'>
|
77
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
78
|
+
... turnes de l'école normale, je grimpai rituellement sur les toits. Pendant ces promenades, <span class="hilite">Sartre</span> et Herbaud chantaient à pleine ...</li>
|
79
|
+
<li class='philologic_occurence'>
|
80
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
81
|
+
... titre d'un chapitre de Descartes: "de Dieu. Derechef qu'il existe." <span class="hilite">Sartre</span> avait une belle voix et un vaste répertoire: old man river et tous les airs de ...</li>
|
82
|
+
<li class='philologic_occurence'>
|
83
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
84
|
+
... De Beauvoir." "Bien, bien", fit Nizan d'un ton sardonique, et <span class="hilite">Sartre</span> dit: "soit " avec bonhomie. Herbaud était morose, ce jour-là, parce qu'il...</li>
|
85
|
+
<li class='philologic_occurence'>
|
86
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
87
|
+
...de Michel-Ange. Puis il me parla des différences qui le distinguaient de <span class="hilite">Sartre</span> et de Nizan. Il se donnait sans arrière-pensée aux joies de ce monde: les...</li>
|
88
|
+
<li class='philologic_occurence'>
|
89
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
90
|
+
...nature, les voyages, les intrigues et les plaisirs." Eux, ils veulent toujours comprendre; <span class="hilite">Sartre</span> surtout " me dit-il. Il ajouta sur un ton de frayeur admirative: "Sartre, s...</li>
|
91
|
+
<li class='philologic_occurence'>
|
92
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
93
|
+
...mprendre; Sartre surtout " me dit-il. Il ajouta sur un ton de frayeur admirative: "<span class="hilite">Sartre</span>, sauf peut-être quand il dort, il pense tout le temps! " Il accepta que Sartre...</li>
|
94
|
+
<li class='philologic_occurence'>
|
95
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
96
|
+
...: "Sartre, sauf peut-être quand il dort, il pense tout le temps! " Il accepta que <span class="hilite">Sartre</span> passât avec nous la soirée du 14 juillet. Après un dîner dans un restaurant alsa...</li>
|
97
|
+
<li class='philologic_occurence'>
|
98
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
99
|
+
...urant alsacien, nous regardâmes le feu d'artifice, assis sur une pelouse de la cité. Puis <span class="hilite">Sartre</span>, dont la munificence était légendaire, nous embarqua dans un taxi, et, au falstaff, ru...</li>
|
100
|
+
<li class='philologic_occurence'>
|
101
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
102
|
+
...ontaient un tas d'histoires. J'étais aux anges. Ma soeur s'était trompée: je trouvai <span class="hilite">Sartre</span> encore plus amusant qu'Herbaud; néanmoins, nous convînmes tous trois que celu...</li>
|
103
|
+
<li class='philologic_occurence'>
|
104
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
105
|
+
...Je vous aime vraiment beaucoup, Castor " me disait-il. Comme je devais dîner avec <span class="hilite">Sartre</span> chez les Nizan, et qu'il n'était pas libre, il me demanda avec une tendre auto...</li>
|
106
|
+
<li class='philologic_occurence'>
|
107
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
108
|
+
...endemain, je me dirigeai vers la Sorbonne le coeur battant; à la porte, je rencontrai <span class="hilite">Sartre</span>: j'étais admissible ainsi que Nizan et lui. Herbaud avait échou..</li>
|
109
|
+
<li class='philologic_occurence'>
|
110
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
111
|
+
...e l'aie revu: "tu diras au Castor tout le bonheur que je lui souhaite " écrivit-il à <span class="hilite">Sartre</span> dans un pneu où il l'avisait de son départ. Il réapparut une semaine plus tard, e...</li>
|
112
|
+
<li class='philologic_occurence'>
|
113
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
114
|
+
...ions tous deux que j'avais menti. "À partir de maintenant, je vous prends en main " me dit <span class="hilite">Sartre</span> quand il m'eut annoncé mon admissibilité. Il avait le goût des amitiés féminine...</li>
|
115
|
+
<li class='philologic_occurence'>
|
116
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
117
|
+
... plus souvent nous nous promenions tous les deux seuls. Sur les quais de la Seine, <span class="hilite">Sartre</span> m'achetait des pardaillan et des fantomas qu'il préférait de loin à l...</li>
|
118
|
+
<li class='philologic_occurence'>
|
119
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
120
|
+
...nd ils prétendaient m'expliquer, les autres gens m'annexaient à leur monde, ils m'irritaient; <span class="hilite">Sartre</span> au contraire essayait de me situer dans mon propre système, il me comprenait à la lumi...</li>
|
121
|
+
<li class='philologic_occurence'>
|
122
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
123
|
+
...ments, les vies dangereuses, les hommes perdus, les excès d'alcool, de drogue, de passion. <span class="hilite">Sartre</span> soutenait que, quand on a quelque chose à dire, tout gaspillage est criminel. L'oeu...</li>
|
124
|
+
<li class='philologic_occurence'>
|
125
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
126
|
+
... par les nouvelles littéraires. " Nous avons reçu de J-P <span class="hilite">Sartre</span> des pages remarquables", écrivit Roland Alix en présentant sa répon...</li>
|
127
|
+
<li class='philologic_occurence'>
|
128
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
129
|
+
...ent qui se supposerait libre." Comparant sa génération à celle qui l'avait précédée, <span class="hilite">Sartre</span> concluait: "nous sommes plus malheureux, mais plus sympathiques." Cette dernière p...</li>
|
130
|
+
<li class='philologic_occurence'>
|
131
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
132
|
+
...x, mais plus sympathiques." Cette dernière phrase m'avait fait rire; mais en causant avec <span class="hilite">Sartre</span> j'entrevis la richesse de ce qu'il appelait sa " théorie de la contingence", où se tro...</li>
|
133
|
+
<li class='philologic_occurence'>
|
134
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
135
|
+
...e très insolite; impossible de s'inspirer d'aucune mode, d'aucun modèle: autant la pensée de <span class="hilite">Sartre</span> m'avait frappée par sa maturité, autant je fus déconcertée par la gaucherie des essa...</li>
|
136
|
+
<li class='philologic_occurence'>
|
137
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
138
|
+
...Nodier m'en avaient imposé: mais de loin, vaguement, sans que je me confronte à eux. <span class="hilite">Sartre</span>, tous les jours, toute la journée je me mesurais à lui et dans nos discussions, je ne ...</li>
|
139
|
+
<li class='philologic_occurence'>
|
140
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
141
|
+
... la première: une parmi d'autres, et soudain incertaine de ses véritables capacités. Car <span class="hilite">Sartre</span> n'était pas le seul qui m'obligeât à la modestie: Nizan, Aron, ...</li>
|
142
|
+
<li class='philologic_occurence'>
|
143
|
+
<a class='philologic_cite' href='./1839/4/0/0'><span class='philologic_property' title='author'>Beauvoir S. de</span>, <span class='philologic_property' title='title'>Memoires Jeune Fille Rangee</span> <span class='philologic_property' title='date'>(1958)</span></a>
|
144
|
+
...marqués par une sorte de grâce funeste; impossible de communiquer avec eux sans réserve. <span class="hilite">Sartre</span> répondait exactement au voeu de mes quinze ans: il était le double en qui je retrouvai...</li>
|
145
|
+
</ol><div class='more'><a href='./?query=sartre&title=&author=Beauvoir+S.+de&q_start=1&q_end=48'>1-48</a> </div></div></body></html>
|
@@ -10,22 +10,25 @@ require 'mocha'
|
|
10
10
|
class TestPhilologicClient < Test::Unit::TestCase
|
11
11
|
|
12
12
|
def setup
|
13
|
-
@test_dir
|
14
|
-
@data_dir
|
13
|
+
@test_dir = File.expand_path( File.dirname(__FILE__) )
|
14
|
+
@data_dir = File.expand_path( File.join( @test_dir, 'data' ) )
|
15
15
|
|
16
|
-
@doc_path
|
17
|
-
@doc_file
|
16
|
+
@doc_path = 'doc_file.html'
|
17
|
+
@doc_file = File.join( @data_dir, @doc_path )
|
18
18
|
|
19
|
-
@endpoint
|
19
|
+
@endpoint = @data_dir
|
20
20
|
|
21
|
-
@freq_path
|
22
|
-
@freq_file
|
21
|
+
@freq_path = 'frequency_sartre.html'
|
22
|
+
@freq_file = File.join( @data_dir, @freq_path )
|
23
23
|
|
24
|
-
@
|
25
|
-
@
|
24
|
+
@freq_links_path = 'frequency_links.html'
|
25
|
+
@freq_links_file = File.join( @data_dir, @freq_links_path )
|
26
26
|
|
27
|
-
@
|
28
|
-
@
|
27
|
+
@root_path = 'root_file.html'
|
28
|
+
@root_file = File.join( @data_dir, @root_path )
|
29
|
+
|
30
|
+
@query_path = 'query_sartre.html'
|
31
|
+
@query_file = File.join( @data_dir, @query_path )
|
29
32
|
end
|
30
33
|
|
31
34
|
|
@@ -298,34 +301,101 @@ class TestPhilologicClient < Test::Unit::TestCase
|
|
298
301
|
|
299
302
|
results = client.frequency('sartre')
|
300
303
|
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
|
319
|
-
|
320
|
-
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
|
327
|
-
|
328
|
-
|
304
|
+
assert_not_nil results
|
305
|
+
assert_kind_of Array, results
|
306
|
+
assert_equal 15, results.size
|
307
|
+
results.each do |result|
|
308
|
+
assert_kind_of Philologic::Key, result
|
309
|
+
assert_nil result['class']
|
310
|
+
assert_not_nil result['href']
|
311
|
+
assert_nil result['some random attribute']
|
312
|
+
assert_nil result['author']
|
313
|
+
assert_nil result['filename']
|
314
|
+
assert_nil result['title']
|
315
|
+
assert_not_nil result.text
|
316
|
+
end
|
317
|
+
|
318
|
+
assert_equal './?query=sartre&author=Beauvoir+S.+de&title=', results.first['href']
|
319
|
+
assert_equal 'Beauvoir S. de', results.first.text
|
320
|
+
assert_equal './?query=sartre&author=Beauvoir+S.+de&title= | Beauvoir S. de', results.first.to_s
|
321
|
+
|
322
|
+
assert_equal './?query=sartre&author=Schaeffer+P.&title=', results.last['href']
|
323
|
+
assert_equal 'Schaeffer P.', results.last.text
|
324
|
+
assert_equal './?query=sartre&author=Schaeffer+P.&title= | Schaeffer P.', results.last.to_s
|
325
|
+
end
|
326
|
+
end
|
327
|
+
|
328
|
+
def test_frequency_search_with_key_value_pairs
|
329
|
+
Philologic::Client.new(@endpoint) do |client|
|
330
|
+
doc = client.send( :_parse, Nokogiri::HTML( open(@freq_file) ) )
|
331
|
+
client.stubs(:_get).with('?query=sartre&report=frequency').returns(doc)
|
332
|
+
|
333
|
+
results = client.frequency( :query => 'sartre' )
|
334
|
+
|
335
|
+
assert_not_nil results
|
336
|
+
assert_kind_of Array, results
|
337
|
+
assert_equal 15, results.size
|
338
|
+
results.each do |result|
|
339
|
+
assert_kind_of Philologic::Key, result
|
340
|
+
assert_nil result['class']
|
341
|
+
assert_not_nil result['href']
|
342
|
+
assert_nil result['some random attribute']
|
343
|
+
assert_nil result['author']
|
344
|
+
assert_nil result['filename']
|
345
|
+
assert_nil result['title']
|
346
|
+
assert_not_nil result.text
|
347
|
+
end
|
348
|
+
|
349
|
+
assert_equal './?query=sartre&author=Beauvoir+S.+de&title=', results.first['href']
|
350
|
+
assert_equal 'Beauvoir S. de', results.first.text
|
351
|
+
assert_equal './?query=sartre&author=Beauvoir+S.+de&title= | Beauvoir S. de', results.first.to_s
|
352
|
+
|
353
|
+
assert_equal './?query=sartre&author=Schaeffer+P.&title=', results.last['href']
|
354
|
+
assert_equal 'Schaeffer P.', results.last.text
|
355
|
+
assert_equal './?query=sartre&author=Schaeffer+P.&title= | Schaeffer P.', results.last.to_s
|
356
|
+
end
|
357
|
+
end
|
358
|
+
|
359
|
+
def test_philologic_key_links
|
360
|
+
Philologic::Client.new(@endpoint) do |client|
|
361
|
+
freq_doc = client.send( :_parse, Nokogiri::HTML( open(@freq_file) ) )
|
362
|
+
freq_links_doc = client.send( :_parse, Nokogiri::HTML( open(@freq_links_file) ) )
|
363
|
+
client.stubs(:_get).with('?query=sartre&report=frequency').returns(freq_doc)
|
364
|
+
client.stubs(:_get).with('?author=Beauvoir+S.+de&query=sartre&title=').returns(freq_links_doc)
|
365
|
+
|
366
|
+
results = client.frequency( :query => 'sartre' )
|
367
|
+
assert_not_nil results
|
368
|
+
|
369
|
+
links = results.first.links
|
370
|
+
|
371
|
+
assert_not_nil links
|
372
|
+
assert_kind_of Array, links
|
373
|
+
assert_equal 48, links.size
|
374
|
+
|
375
|
+
links.each do |link|
|
376
|
+
assert_kind_of Philologic::Link, link
|
377
|
+
assert_equal 'philologic_cite', link['class']
|
378
|
+
assert_not_nil link['href']
|
379
|
+
assert_nil link['some random attribute']
|
380
|
+
assert_not_nil link['author']
|
381
|
+
assert_nil link['filename']
|
382
|
+
assert_not_nil link['title']
|
383
|
+
assert_raise(NoMethodError) { link.text }
|
384
|
+
end
|
385
|
+
|
386
|
+
assert_equal './1839/3/0/0', links.first['href']
|
387
|
+
assert_equal 'Beauvoir S. de', links.first['author']
|
388
|
+
assert_equal 'Memoires Jeune Fille Rangee', links.first['title']
|
389
|
+
assert_nil links.first['filename']
|
390
|
+
assert_raise(NoMethodError) { links.first.text }
|
391
|
+
assert_equal './1839/3/0/0 | Memoires Jeune Fille Rangee | Beauvoir S. de', links.first.to_s
|
392
|
+
|
393
|
+
assert_equal './1839/4/0/0', links.last['href']
|
394
|
+
assert_equal 'Beauvoir S. de', links.last['author']
|
395
|
+
assert_equal 'Memoires Jeune Fille Rangee', links.last['title']
|
396
|
+
assert_nil links.last['filename']
|
397
|
+
assert_raise(NoMethodError) { links.last.text }
|
398
|
+
assert_equal './1839/4/0/0 | Memoires Jeune Fille Rangee | Beauvoir S. de', links.last.to_s
|
329
399
|
|
330
400
|
end
|
331
401
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: philologic-client
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.8
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-01-
|
12
|
+
date: 2012-01-10 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rake
|
16
|
-
requirement: &
|
16
|
+
requirement: &70366750022700 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70366750022700
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rdoc
|
27
|
-
requirement: &
|
27
|
+
requirement: &70366750022260 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70366750022260
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: mocha
|
38
|
-
requirement: &
|
38
|
+
requirement: &70366750021840 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70366750021840
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rdoc-readme
|
49
|
-
requirement: &
|
49
|
+
requirement: &70366750021340 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 0.1.2
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70366750021340
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: simplecov
|
60
|
-
requirement: &
|
60
|
+
requirement: &70366750020920 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70366750020920
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: nokogiri
|
71
|
-
requirement: &
|
71
|
+
requirement: &70366750020460 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,7 +76,7 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :runtime
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70366750020460
|
80
80
|
description: Ruby client for interacting with the Philologic API.
|
81
81
|
email:
|
82
82
|
- blair.christensen@gmail.com
|
@@ -94,6 +94,7 @@ files:
|
|
94
94
|
- lib/philologic-client/version.rb
|
95
95
|
- philologic-client.gemspec
|
96
96
|
- test/data/doc_file.html
|
97
|
+
- test/data/frequency_links.html
|
97
98
|
- test/data/frequency_sartre.html
|
98
99
|
- test/data/query_sartre.html
|
99
100
|
- test/data/root_file.html
|
@@ -112,7 +113,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
112
113
|
version: '0'
|
113
114
|
segments:
|
114
115
|
- 0
|
115
|
-
hash: -
|
116
|
+
hash: -832477634477053375
|
116
117
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
117
118
|
none: false
|
118
119
|
requirements:
|
@@ -121,7 +122,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
121
122
|
version: '0'
|
122
123
|
segments:
|
123
124
|
- 0
|
124
|
-
hash: -
|
125
|
+
hash: -832477634477053375
|
125
126
|
requirements: []
|
126
127
|
rubyforge_project: philologic-client
|
127
128
|
rubygems_version: 1.8.7
|
@@ -130,6 +131,7 @@ specification_version: 3
|
|
130
131
|
summary: Ruby client for interacting with the Philologic API.
|
131
132
|
test_files:
|
132
133
|
- test/data/doc_file.html
|
134
|
+
- test/data/frequency_links.html
|
133
135
|
- test/data/frequency_sartre.html
|
134
136
|
- test/data/query_sartre.html
|
135
137
|
- test/data/root_file.html
|