text_rank 1.2.4 → 1.2.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 57c44c7be2d14f3fb9d2b76212639c6f5416adedeb32e3c9d39a6b90368680bd
4
- data.tar.gz: 829bf430e9cc9dd942bdd753f801fc01d94929f42be09c6504691d47bc7c9f04
3
+ metadata.gz: 8578660270e5eb59c1bd9cfc7b3a22d10ac953cc6672073b368bbf20464dc3f3
4
+ data.tar.gz: 6043c2eea693623b65f2dffc0ad2be1ae5bb0f1be57dcbbcb8ad871c4260a63b
5
5
  SHA512:
6
- metadata.gz: 7bdb293e07cca83ba7665cbe3861360cd3e4b82d64d5cd2167717e509bff6ccf14948436463464a9ab57f92cd97b8e7a918d27d004f3a7c476feb5c55565191f
7
- data.tar.gz: 446d28deeca6a972fc9b257b8699a859ec4fc481d6f04f31d02215d79a7251b87cfebeaba7335001e7977e974b72c3e79113c754d1749303dc943b3d59c6d62c
6
+ metadata.gz: 73acab105c3f6dbee7b7c49bd383f41b0da192d1c67b56c9813f7ad1f32c70790b7a99f334bccd3104573e78f39cd5400f0ea066bf2f776da7f6c7083b4d9df2
7
+ data.tar.gz: c51e2861b1aaa21ce91c783d3528815b66c343d8299564a50e69ad0887b14d06908d54626fbd01ed8508f52cd8d893433d3c91f5eec6f8a6feff4bbc077c8a17
@@ -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
- tokens = tokenize(text)
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).build_graph(tokens, graph)
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
- apply_rank_filters(ranks, tokens: tokens, original_text: text)
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
@@ -1,6 +1,6 @@
1
1
  module TextRank
2
2
 
3
3
  # Current gem version
4
- VERSION = '1.2.4'
4
+ VERSION = '1.2.5'
5
5
 
6
6
  end
@@ -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
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: 2020-06-10 00:00:00.000000000 Z
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: []