Логические задачки на php

12
DmitryShustov
На сайте с 27.11.2004
Offline
259
1293

Всем привет.

Сижу думаю о следующих задачах и не могу понять логику их решения:

1. Найти контентную часть страницы. Это основной блок с контентом страницы. Как его можно определить средствами php (желательно стандартными)?

2. Способ определения примерного места размещения искомого блока на сайте: центр или подвал сайта. Здесь может и не только php потребуется, но все равно слабо представляю как автоматизировать задачу.

Hixon10
На сайте с 21.08.2010
Offline
125
#1

Привет.

1) Ну, понятно, что тут нужно придумать алгоритм и реализовать его на PHP. Если бы я выполнял данную задачу, то я бы совмещал эти две вещи:

а) css class/id элементов; то есть, грубо говоря, искал бы контейнер с class/id="content, ..., ".

б) Попробовал бы искать элемент, содержащий в себе больше всего текста / тегов <p> среди прочих блоков.

Веду свой невзрачный блог (http://hixon.ru/).
IL
На сайте с 20.04.2007
Offline
435
#2
DmitryShustov:
1. Найти контентную часть страницы. Это основной блок с контентом страницы. Как его можно определить средствами php (желательно стандартными)?

Ну это не совсем "по" PHP задача.

Если есть 2-3-4 страницы с того же сайта - искать совпадающие/различающиеся логические блоки.

* картинка есть такая.. "нельзя просто так взять и ..."

... :) Облачные серверы от RegRu - промокод 3F85-3D10-806D-7224 ( http://levik.info/regru )
Urbanoid
На сайте с 20.03.2010
Offline
152
#3
Hixon10:
б) Попробовал бы искать элемент, содержащий в себе больше всего текста / тегов <p> среди прочих блоков.

Самый универсальный способ, поддерживаю

Codd
На сайте с 13.01.2011
Offline
65
#4
DmitryShustov
На сайте с 27.11.2004
Offline
259
#5
Hixon10:
а) css class/id элементов; то есть, грубо говоря, искал бы контейнер с class/id="content, ..., ".

не, слишком долго маски для поиска придумывать и не все придумаешь. имхо.

Hixon10:
б) Попробовал бы искать элемент, содержащий в себе больше всего текста / тегов <p> среди прочих блоков.

ближе

Мне видится разбор страницы с отсечением маленьких блоков до N символов текста. В качестве разделителей идут блоки тегов, они же потом вообще удаляются. На выходе получается массив с данными ('1000 символов','2354','534','234'). Но какой то он усложненный, на мой взгляд.

Hixon10:
б) Попробовал бы искать элемент, содержащий в себе больше всего текста / тегов <p> среди прочих блоков.

а если там div`ы будут? или br? тоже не вариант

---------- Добавлено 07.05.2013 в 14:17 ----------

Codd, python и java это прекрасно, но задачка для php, увы.. На питоне точно можно решить эту задачу - там хватает средств, но тут нагрузка задачи небольшая совершенно точно и нужна логика ее решения всего навсего. Все равно спасибо за варианты, посмотрю еще в сторону питона, может быть.

AutoBlogger
На сайте с 05.10.2011
Offline
128
#6

Жаль, что только Питон и Джава. Для PHP я знаю только такое решение: http://fivefilters.org/content-only/

К сожалению, оно довольно громоздкое и несколько неуклюжее, да еще и лицензия там GPL, а это не всегда айс. Apache или MIT было бы куда круче 🙄

🪄 www.cyberseo.net - плагин для создания автоблогов под WordPress, с поддержкой OpenAI GPT, Anthropic Claude, Google Gemini, Llama, Mistral, Midjourney, FLUX, Stable Diffusion | 📣 Импорт RSS / XML / JSON/ CSV / HTML
O
На сайте с 29.05.2008
Offline
195
#7

Искать блок <article> с помощью регулярных выражений либо DOMDocument. :) Если нужно искать контент не на своем сайте и нету возможности задать article, тогда этот вариант нужно просто добавить в существующие варианты поиска.

Милованов Ю.С
На сайте с 24.01.2008
Offline
196
#8
DmitryShustov:
Всем привет.

Сижу думаю о следующих задачах и не могу понять логику их решения:

1. Найти контентную часть страницы. Это основной блок с контентом страницы. Как его можно определить средствами php (желательно стандартными)?

2. Способ определения примерного места размещения искомого блока на сайте: центр или подвал сайта. Здесь может и не только php потребуется, но все равно слабо представляю как автоматизировать задачу.

Через 18 дней Вы сможете найти людей для этой работы, и не надо будет алгоритм выдумывать🤣D:D

Подпись))
O
На сайте с 29.05.2008
Offline
195
#9
Милованов Ю.С:
Через 18 дней Вы сможете найти людей для этой работы, и не надо будет алгоритм выдумыватьD

Да-да. Я тоже чувствую это. Возле него сильная энергетика знаний и конкретизации. О Боже, я не хочу больше здесь находиться. Здесь духи. Это удивительно.

Смотрите больше в Битва экстрасенсов 10.

doctorpc
На сайте с 12.07.2009
Offline
112
#10
ortegas:
Да-да. Я тоже чувствую это. Возле него сильная энергетика знаний и конкретизации. О Боже, я не хочу больше здесь находиться. Здесь духи. Это удивительно.

Смотрите больше в Битва экстрасенсов 10.

Думаю, имелось ввиду, что начнутся каникулы... :)

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий