Программно определить, сколько комментариев в блоге - PullRequest
0 голосов
/ 07 сентября 2008

Как наиболее эффективно определить количество комментариев к конкретному сообщению в блоге? Мы хотим сохранить данные для нового веб-приложения. У нас есть список постоянных ссылок URl, а также RSS-каналы.

Ответы [ 3 ]

4 голосов
/ 07 сентября 2008

Если блог контролируется вами, лучше всего подойдет «Выбор количества (комментируемых) ОТ комментариев, ГДЕ postID = 2». Если у вас есть только URL-адрес, но он все еще является вашим блогом / базой данных, вам нужно создать подзапрос «WHERE postID = (ВЫБЕРИТЕ из сообщений WHERE permalink = url)» или любой другой способ присоединения комментариев к сообщениям из URL.

Если это удаленный блог, у вас проблема в том, что каждый блог имеет свой HTML. По сути, вам нужно создать парсер, который анализирует HTML и ищет повторяющиеся элементы, такие как «div class = comment». Но это будет в основном ручной труд для каждого блога.

В некоторых блогах могут быть более эффективные способы, например подсчет комментариев где-то в HTML или некоторый интерфейс, но я не знаю ни одного стандартного способа.

РЕДАКТИРОВАТЬ: Если вы получили RSS-канал Comment, вы можете испытать удачу, используя механизм подсчета узлов XML, такой как Count .

в XPath.
2 голосов
/ 07 сентября 2008

Если я правильно понимаю, вы хотите, чтобы эвристик оценил количество комментариев на странице HTML, которая, как известно, является сообщением в блоге, да?

Очень часто в конкретном блоге есть некоторые функции, облегчающие работу. Если вы посмотрите на мой номер http://kstruct.com/, то увидите, что на всех страницах с комментариями написано «X-ответы», поэтому, если вы смогли выполнить какую-то работу для каждого блога, это, вероятно, не очень сложно.

Если вам нужно что-то общее, я думаю, что в комментариях есть несколько общих черт, которые вы можете обнаружить. С одной стороны, любые ссылки в них, скорее всего, будут иметь атрибуты rel = "nofollow", так что, видя, что внутри блока может подразумеваться, что это комментарий.

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

Как указал Майкл Стум, если на страницах есть канал Comment-RSS, ваша жизнь станет намного проще, потому что вы можете получать данные комментариев в структурированном формате.

В целом, я думаю, что это будет довольно сложная проблема для решения в целом.

0 голосов
/ 07 сентября 2008

Блоги почти всегда имеют RSS-ленту для комментариев. Если у вас есть это, то вы можете определить точное количество комментариев, так как каналы 99% времени следуют стандарту. Даже если блог принадлежит вам, если вы уже генерируете канал RSS, не стесняйтесь звонить в вашу БД. Вы уже сделали это для генерации канала, поэтому имеет смысл просто пройти через узлы XML. Таким образом, у вас не будет дополнительных накладных расходов (в зависимости от того, как часто вы хотите получать эту информацию).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...