|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
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-селекторы Кто что посоветует ? Назначение паука общее - от извлечения ссылок до полноценного парсинга/анализа содержимого страниц. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2016, 14:53 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
Преимущественно будет производиться парсинг html-страниц. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.12.2016, 14:55 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
Сообщество вымерло, что ли... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2016, 14:01 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
Cyrax_02, я б это на Java склепал не заморачиваясь ... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2016, 14:28 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
я когда простых паучков писал выбирал второй вариант. Мне показалось самым удобным решением из возможных ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2016, 17:27 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
есть мнение, что 2й вариант будет побыстрее и меньше жрать ресурсов ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2016, 17:50 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
Из всего Интернета вот здесь самая мощная выжимка по всем инструментариям: 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 ... |
|||
:
Нравится:
Не нравится:
|
|||
07.12.2016, 19:29 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
авторя б это на Java склепал не заморачиваясь ... Не уж-то на Java инструментарий для парсинга HTML настолько " крутой ", чтобы отказываться от php в пользу java ? ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2016, 13:04 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
Cyrax_02, почему отказываться,почему вместо? Что задача так и стоит - написать именно на PHP? Просто есть пара хороших Java библиотек Crawler4j (многопоточный, с возможностью перезапуска) и парсер Jsoup PS двое суток уже прошло, а с места ничего не сдвинулось. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.12.2016, 13:56 |
|
php-инструментарий для паучка
|
|||
---|---|---|---|
#18+
авторПросто есть пара хороших Java библиотек Crawler4j (многопоточный, с возможностью перезапуска) curl тоже так умеет . авторпочему отказываться,почему вместо? Что задача так и стоит - написать именно на PHP?Ну... на php у меня туева куча сервисного кода написана. Этот код активно используется паучком. авторPS двое суток уже прошло, а с места ничего не сдвинулось.Вообще-то, с инструментарием я определился ещё в день создания темы. А за эти 2 дня паучок уже научился самостоятельно распознавать кодировку страниц (без мета-тега meta charset ), лазать по страницам, распознавать пагинацию и вытаскивать нужную информацию двумя строками кода. Правда, пока идёт привязка к конкретной структуре веб-страниц, но ведь паучок умнеет с каждым днём... ... |
|||
:
Нравится:
Не нравится:
|
|||
09.12.2016, 01:41 |
|
|
start [/forum/search_topic.php?author=TRX_&author_mode=last_posts&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
49ms |
get tp. blocked users: |
2ms |
others: | 880ms |
total: | 1049ms |
0 / 0 |