Гость
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / php-инструментарий для паучка / 10 сообщений из 10, страница 1 из 1
06.12.2016, 14:53
    #39361246
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
1. Регулярки
2. DOMDocument::loadHTML() + DOMXPath
3. Tidy + SimpleXML + XPath
4. Сторонний проект PHP Simple HTML DOM Parser + css-селекторы
5. Прочие самоделки ( phpQuery , queryPath , Zend_Dom_Query , Nokogiri ) + css-селекторы

Регулярки исключаем сразу. "Самоделки" - тоже. Остаются 2 варианта:
1) п.2 или п.3 + xpath
2) PHP Simple HTML DOM Parser + css-селекторы

Кто что посоветует ?
Назначение паука общее - от извлечения ссылок до полноценного парсинга/анализа содержимого страниц.
...
Рейтинг: 0 / 0
06.12.2016, 14:55
    #39361250
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
Преимущественно будет производиться парсинг html-страниц.
...
Рейтинг: 0 / 0
07.12.2016, 14:01
    #39361815
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
Сообщество вымерло, что ли...
...
Рейтинг: 0 / 0
07.12.2016, 14:28
    #39361833
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
Cyrax_02,

я б это на Java склепал не заморачиваясь ...
...
Рейтинг: 0 / 0
07.12.2016, 17:27
    #39362020
Програмёр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
я когда простых паучков писал выбирал второй вариант. Мне показалось самым удобным решением из возможных
...
Рейтинг: 0 / 0
07.12.2016, 17:50
    #39362044
SharuPoNemnogu
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
есть мнение, что 2й вариант будет побыстрее и меньше жрать ресурсов
...
Рейтинг: 0 / 0
07.12.2016, 19:29
    #39362104
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
Из всего Интернета вот здесь самая мощная выжимка по всем инструментариям:
http://stackoverflow.com/questions/3577641/how-do-you-parse-and-process-html-xml-in-php/3577662

В частности, про использования регулярных выражений для парсинга html:
авторLast and least recommended, you can extract data from HTML with regular expressions. In general using Regular Expressions on HTML is discouraged.

Most of the snippets you will find on the web to match markup are brittle. In most cases they are only working for a very particular piece of HTML. Tiny markup changes, like adding whitespace somewhere, or adding or changing attributes in a tag, can make the regex fails when it's not properly written. You should know what you are doing before using regex on HTML.

HTML parsers already know the syntactical rules of HTML. Regular expressions have to be taught for each new regex you write. Regex are fine in some cases, but it really depends on your use-case.

You can write more reliable parsers, but writing a complete and reliable custom parser with regular expressions is a waste of time when the aforementioned libraries already exist and do a much better job on this.

Посмотрел ( PHP Simple HTML DOM Parser ) - такая же самоделка, как и все прочие из п.5 . В отдельный пункт можно было бы не выносить.
К тому же исходный код, мягко говоря, не красивый . http://stackoverflow.com/a/3577662 The codebase is horrible and the parser itself is rather slow and memory hungry. Not all jQuery Selectors (such as child selectors) are possible. Any of the libxml based libraries should outperform this easily
...
Рейтинг: 0 / 0
08.12.2016, 13:04
    #39362502
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
авторя б это на Java склепал не заморачиваясь ... Не уж-то на Java инструментарий для парсинга HTML настолько " крутой ", чтобы отказываться от php в пользу java ?
...
Рейтинг: 0 / 0
08.12.2016, 13:56
    #39362542
Изопропил
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
Cyrax_02,

почему отказываться,почему вместо?
Что задача так и стоит - написать именно на PHP?

Просто есть пара хороших Java библиотек Crawler4j (многопоточный, с возможностью перезапуска)
и парсер Jsoup

PS двое суток уже прошло, а с места ничего не сдвинулось.
...
Рейтинг: 0 / 0
09.12.2016, 01:41
    #39363070
Cyrax_02
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
php-инструментарий для паучка
авторПросто есть пара хороших Java библиотек Crawler4j (многопоточный, с возможностью перезапуска) curl тоже так умеет .

авторпочему отказываться,почему вместо?
Что задача так и стоит - написать именно на PHP?Ну... на php у меня туева куча сервисного кода написана. Этот код активно используется паучком.

авторPS двое суток уже прошло, а с места ничего не сдвинулось.Вообще-то, с инструментарием я определился ещё в день создания темы. А за эти 2 дня паучок уже научился самостоятельно распознавать кодировку страниц (без мета-тега meta charset ), лазать по страницам, распознавать пагинацию и вытаскивать нужную информацию двумя строками кода. Правда, пока идёт привязка к конкретной структуре веб-страниц, но ведь паучок умнеет с каждым днём...
...
Рейтинг: 0 / 0
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / php-инструментарий для паучка / 10 сообщений из 10, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]