Запишу элементарные вещи по phpQuery, своего рода мини справка
ini_set(‘default_socket_timeout’, 120);
ini_set(‘max_execution_time’, ’0′);
//—целевой сайт
define(‘URL’, ‘целевой сайт’);
require(‘phpQuery/phpQuery/phpQuery.php’);
………………..
Взяли контент страницы начали ее перебор
…….
взять имя текущего тега
$tagName = $li->tagName;
взять текстовое содержимое элемента
$text= pq($element)->text();
взять содержимое элемента в виде html
$text= pq($element)->html();
взять атрибут
$text= pq($element)->attr(‘href’);
задали новое имя атрибута
$text= pq($element)->attr(‘href’, ‘newVal’);
берем коллекцию по определенному признаку
все дивы класса dsBodyBg расположенные внутри дива dsBodyContent
$elements = $results->find(‘div.dsBodyContent > div.dsBodyBg’);
выбрать родителя,подняться на уровень выше
$this->parent();
Тэги: phpquery
спасибо! отличная информация по phpquery
Вот интересно,
$results->find(‘div > span’);
одинаково по скорости работает с
$results->find(‘html > body > div > span’); ?
$results->find(‘html > body > div > span’); быстрее вероятно, но не факт )
strip_tags() с заветным параметром ускоряет парсинг в несколько раз
> берем коллекцию по определенному признаку
> все дивы класса dsBodyBg расположенные внутри дива dsBodyContent
> $elements = $results->find(‘div.dsBodyBg > div.dsBodyContent’);
а может наоборот?
> берем коллекцию по определенному признаку
> все дивы класса dsBodyContent расположенные внутри дива dsBodyBg
> $elements = $results->find(‘div.dsBodyBg > div.dsBodyContent’);
или так
> берем коллекцию по определенному признаку
> все дивы класса dsBodyBg расположенные внутри дива dsBodyContent
> $elements = $results->find(‘div.dsBodyContent > div.dsBodyBg’);
Поправил
Благодарю что заметили неточность, часто пишешь заметку после того как плодотворно что-то перед этим делал и глаз часто замылин
Здравствуте.Вижу люди толковые подобрались.Как это работает? В какой файл записать?
javascript основы почитай