crodas / text-rank
Extract relevant keywords from a given text
Installs: 49 840
Dependents: 1
Suggesters: 0
Security: 0
Stars: 104
Watchers: 6
Forks: 25
Open Issues: 5
Requires
- ext-mbstring: *
- crodas/languagedetector: ~0.1
Suggests
- ext-stem: Improves keywords selection
This package is auto-updated.
Last update: 2024-12-12 19:07:40 UTC
README
extract relevant keywords from a given text
How to use it
In order to use the class, you must instance a Config
object.
<?php require __DIR__ . "/vendor/autoload.php"; use \crodas\TextRank\Config; use \crodas\TextRank\TextRank; $config = new Config; $textrank = new TextRank($config); $keywords = $textrank->getKeywords($some_long_text); var_dump($keywords);
It is possible to get better results by adding few information about the language (stopword
list, stemmer
with pecl install stem
).
<?php require __DIR__ . "/vendor/autoload.php"; use \crodas\TextRank\Config; use \crodas\TextRank\TextRank; use \crodas\TextRank\Stopword; $config = new Config; $config->addListener(new Stopword); $textrank = new TextRank($config); $keywords = $textrank->getKeywords($some_long_text); var_dump($keywords);
By doing this it will detect the language of the text and will remove common words (from the stopword list). If ext-stem
is available the results will be even better.
Summarize large texts
This class is also capable of summarizing long texts
$config = new \crodas\TextRank\Config; $config->addListener(new \crodas\TextRank\Stopword); $analizer = new \crodas\TextRank\Summary($config); $summary = $analizer->getSummary($text);
$summary
is at most 5% of the sentences of the text.