text_rank 1.2.4 → 1.2.5
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.
- checksums.yaml +4 -4
- data/lib/text_rank.rb +1 -1
- data/lib/text_rank/keyword_extractor.rb +13 -4
- data/lib/text_rank/version.rb +1 -1
- data/text_rank.gemspec +1 -0
- metadata +20 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 8578660270e5eb59c1bd9cfc7b3a22d10ac953cc6672073b368bbf20464dc3f3
|
4
|
+
data.tar.gz: 6043c2eea693623b65f2dffc0ad2be1ae5bb0f1be57dcbbcb8ad871c4260a63b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 73acab105c3f6dbee7b7c49bd383f41b0da192d1c67b56c9813f7ad1f32c70790b7a99f334bccd3104573e78f39cd5400f0ea066bf2f776da7f6c7083b4d9df2
|
7
|
+
data.tar.gz: c51e2861b1aaa21ce91c783d3528815b66c343d8299564a50e69ad0887b14d06908d54626fbd01ed8508f52cd8d893433d3c91f5eec6f8a6feff4bbc077c8a17
|
data/lib/text_rank.rb
CHANGED
@@ -20,7 +20,7 @@ module TextRank
|
|
20
20
|
autoload :VERSION, 'text_rank/version'
|
21
21
|
|
22
22
|
# A convenience method for quickly extracting keywords from text with default options
|
23
|
-
# @param text [String] text from which to extract keywords
|
23
|
+
# @param text [String,Array<String>] text from which to extract keywords
|
24
24
|
# @option (see KeywordExtractor.basic)
|
25
25
|
# @return [Hash<String, Float>] of tokens and text rank (in descending order)
|
26
26
|
def self.extract_keywords(text, **options)
|
@@ -103,14 +103,23 @@ module TextRank
|
|
103
103
|
end
|
104
104
|
|
105
105
|
# Filter & tokenize text, and return PageRank
|
106
|
-
# @param text [String] unfiltered text to be processed
|
106
|
+
# @param text [String,Array<String>] unfiltered text to be processed
|
107
107
|
# @return [Hash<String, Float>] tokens and page ranks (in descending order)
|
108
108
|
def extract(text, **options)
|
109
|
-
|
109
|
+
text = Array(text)
|
110
|
+
tokens_per_text = text.map do |t|
|
111
|
+
tokenize(t)
|
112
|
+
end
|
110
113
|
graph = PageRank.new(**@page_rank_options)
|
111
|
-
classify(@graph_strategy, context: GraphStrategy)
|
114
|
+
strategy = classify(@graph_strategy, context: GraphStrategy)
|
115
|
+
tokens_per_text.each do |tokens|
|
116
|
+
strategy.build_graph(tokens, graph)
|
117
|
+
end
|
112
118
|
ranks = graph.calculate(**options)
|
113
|
-
|
119
|
+
tokens_per_text.each_with_index do |tokens, i|
|
120
|
+
ranks = apply_rank_filters(ranks, tokens: tokens, original_text: text[i])
|
121
|
+
end
|
122
|
+
ranks
|
114
123
|
end
|
115
124
|
|
116
125
|
private
|
data/lib/text_rank/version.rb
CHANGED
data/text_rank.gemspec
CHANGED
@@ -23,6 +23,7 @@ Gem::Specification.new do |spec|
|
|
23
23
|
spec.add_development_dependency 'rspec'
|
24
24
|
spec.add_development_dependency 'rubocop'
|
25
25
|
spec.add_development_dependency 'simplecov', '~> 0.17.0' # 0.18 not supported by code climate
|
26
|
+
spec.add_development_dependency 'yard'
|
26
27
|
|
27
28
|
spec.add_development_dependency 'engtagger' # Optional runtime dependency but needed for specs
|
28
29
|
spec.add_development_dependency 'nokogiri' # Optional runtime dependency but needed for specs
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: text_rank
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.2.
|
4
|
+
version: 1.2.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David McCullars
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-01-27 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
@@ -80,6 +80,20 @@ dependencies:
|
|
80
80
|
- - "~>"
|
81
81
|
- !ruby/object:Gem::Version
|
82
82
|
version: 0.17.0
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: yard
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '0'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '0'
|
83
97
|
- !ruby/object:Gem::Dependency
|
84
98
|
name: engtagger
|
85
99
|
requirement: !ruby/object:Gem::Requirement
|
@@ -170,7 +184,7 @@ homepage: https://github.com/david-mccullars/text_rank
|
|
170
184
|
licenses:
|
171
185
|
- MIT
|
172
186
|
metadata: {}
|
173
|
-
post_install_message:
|
187
|
+
post_install_message:
|
174
188
|
rdoc_options: []
|
175
189
|
require_paths:
|
176
190
|
- lib
|
@@ -185,9 +199,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
185
199
|
- !ruby/object:Gem::Version
|
186
200
|
version: '0'
|
187
201
|
requirements: []
|
188
|
-
rubyforge_project:
|
202
|
+
rubyforge_project:
|
189
203
|
rubygems_version: 2.7.6
|
190
|
-
signing_key:
|
204
|
+
signing_key:
|
191
205
|
specification_version: 4
|
192
206
|
summary: Implementation of TextRank solution to ranked keyword extraction
|
193
207
|
test_files: []
|