Лучший способ создания каналов со страниц, которые не поддерживают RSS - PullRequest
0 голосов
/ 01 марта 2011

Лучший пример, который я видел до сих пор, это http://www.instapaper.com/. Они могут получить текст с любой страницы.

В моем случае мне нужно получить текст, а также создать список, учитывая, что у меня будет одна страница со списком новостей каждого сайта.

Например, nytimes.com (просто пример). Я должен получить все ссылки и получить текст, если он существует. Также, возможно, мне нужно указать некоторые критерии URL, такие как генерация каналов из ссылок, где URL содержит что-то вроде "/[year]/[month/[day]/[category]/post-name".

Мне не нужен полный код, просто концепция и лучший подход. Есть идеи?

1 Ответ

1 голос
/ 01 марта 2011

Это больно, но единственное хорошее решение - использовать HTML-парсер и разобрать все hrefs. Я рекомендую использовать библиотеку, которая позволяет легко выбирать все ссылки. Я слышал об этом http://code.google.com/p/phpquery/, но никогда не использовал его. Что бы вы сделали, это загрузите каждую страницу и затем выберите все ссылки.

Нет более легкого пути. Если вы изменили свою технологию на что-то вроде java или python, то вы можете использовать многопоточность и ускорить процесс. Конечно, как только вы проанализируете, сохраните данные в какой-либо базе данных, чтобы потом можно было на них ссылаться.

Надеюсь, это поможет.

...