Это извлечение класса читабельности из этой полнотекстовой вилки. Это может быть определена как лучшая версия оригинальной PHP-читаемости.
LIB PHP по умолчанию действительно старая и должна быть улучшена. Я нашел отличную вилку полнотекстового RSS из @Dither, которая улучшает класс читаемости.
php-cs-fixer и добавил пространство именНо код все еще очень трудно понять / прочитать ...
По умолчанию этот LIB будет использовать аккуратное расширение, если оно будет доступно. Tidy используется только для очистки данного HTML и избежать проблем с плохой структурой HTML и т. Д. Это будет предложено композитором.
Кроме того, если у вас есть проблемы с анализом контента без установки Tidy, установите его и попробуйте еще раз.
use Readability Readability ;
$ url = ' http://www.medialens.org/index.php/alerts/alert-archive/alerts-2013/729-thatcher.html ' ;
// you can use whatever you want to retrieve the html content (Guzzle, Buzz, cURL ...)
$ html = file_get_contents ( $ url );
$ readability = new Readability ( $ html , $ url );
// or without Tidy
// $readability = new Readability($html, $url, 'libxml', false);
$ result = $ readability -> init ();
if ( $ result ) {
// display the title of the page
echo $ readability -> getTitle ()-> textContent ;
// display the *readability* content
echo $ readability -> getContent ()-> textContent ;
} else {
echo ' Looks like we couldn ' t find the content. :( ' ;
} Если вы хотите отладить его или проверить, что происходит, вы можете внедрить журнал (который должен следить за PsrLogLoggerInterface , например, монолог):
use Readability Readability ;
use Monolog Logger ;
use Monolog Handler StreamHandler ;
$ url = ' http://www.medialens.org/index.php/alerts/alert-archive/alerts-2013/729-thatcher.html ' ;
$ html = file_get_contents ( $ url );
$ logger = new Logger ( ' readability ' );
$ logger -> pushHandler ( new StreamHandler ( ' path/to/your.log ' , Logger:: DEBUG ));
$ readability = new Readability ( $ html , $ url );
$ readability -> setLogger ( $ logger );