Всех приветствую!
Помогите пожалуйста разобраться со следующей задачей: Обрисую картину в целом: есть ресурс, в нём находиться список заголовков новостей в виде ссылок(ссылки ведут на разные новостные сайты) и каждая из этих ссылок ведёт на целую конкретную новость... ...как сделать так, чтобы парсился только текст новости с помощью simple_html_dom ?
Ссылки парсю так (обратите пжлста внимание на комментарии):
foreach($dom->find('div.central_ln_wrap div.newsfeed div.hl') as $element) {
$source_url = cur($element->find('a.hll',0)->href); // Переходим по ссылкам
$source_link = $source_url->find('a[rel]',0)->href; // чтобы забрать ссылку на источник
$text_article = cur($source_link); // сюда помещается ссылка на полную новость...
$text = $text_article->find('title',0)->plaintext; // ...а в эту переменную должен записываться полный текст новости....пока что записываю содержимое тега title)
$result[$element->attr['data-id']]=array(
'flag' => $element->find('span[c]',0)->attr['c'],
'title' => $element->find('a.hll',0)->plaintext,
'source_link'=> $source_link,
'text' => $text // вот сюда нужно помещать полный текст статьи, которая лежит по ссылке 'source_link'=> $source_link
);
}
результат парсинга ссылок:
[928871698] => Array
(
[flag] => US
[title] => 65% of Americans save little or nothing—and half could struggle in retirement
[source_link] => https://www.cnbc.com/2018/03/15/bankrate-65-percent-of-americans-save-little-or-nothing.html
[text] => Bankrate: 65% of Americans save little or nothing
)
[928871693] => Array
(
[flag] => CA
[title] => Raw footage shows damage from Miami bridge collapse
[source_link] => https://www.theglobeandmail.com/world/video-raw-footage-shows-damage-from-miami-bridge-collapse/
[text] => Raw footage shows damage from Miami bridge collapse - The Globe and Mail
)
PS: Безусловно, я бы попробовал парсить скажем по тегам "p", но дело в том, что у каждого источника(source_link) свои предпочтения-кто то использует параграфы а кто то теги div а самые ушлые вообще никаких тегов в тексте новости не используют...может как то можно сварганить условие, которое бы подсчитывало: если допустим больше одного предложения то парсить ну или типо того...вот ломаю голову и всё пока безрезультатно ((
Заранее благодарю за любую помощь!
Это довольно сложная тема, люди вокруг этого целые сервисы строят и/или встраивают это в браузер (read mode). Можно например использовать готовую библиотеку, например https://github.com/scotteh/php-goose (не работал, но это первое что находится). Возможно где-то есть и API сервисов, которым можно скормить ссылку и получить очищенный текст
Виртуальный выделенный сервер (VDS) становится отличным выбором
Насколько PHP плох в этом и почему? Читал на разных форумах что PHP плохо справляется с WebSocket, мол часто падает сервер, большая нагрузка, плохая...
ПриветНе знаю правильно ли я вообще задаю вопрос, так как на тостере не помогли особо
Как перевернуть коллекцию моделей в php фреймворке laravel?