Запрос DOMDocument xpath обрезан в течение определенного периода времени? - PullRequest
1 голос
/ 13 сентября 2011

есть ли способ обрезать запрос и вернуть обратно результаты .. заданное время, необходимое для получения всех изображений с заданного URL-адреса .., т.е. запросить половину веб-страницы? или время работы не более 5 секунд, поэтому он получит все, что может, за 5 секунд .....

$xpath = new DOMXPath( $htmlget);
       $nodelist = $xpath->query( "//img/@src" );

1 Ответ

0 голосов
/ 14 сентября 2011

Вы можете оценить отдельно любое из следующих выражений XPath одно за другим и остановить этот процесс всякий раз, когда истекает таймер или выполняется другой критерий:

(//img/@src)[1]
(//img/@src)[2]
(//img/@src)[3]
...............
(//img/@src)[$N]

Вероятно, это можно ускорить с помощью чанкинга:

(//img/@src)[position() < 100]
(//img/@src)[position() >= 100 and position() < 200]
...............
(//img/@src)[position() >= 100*$N and position() < 200*$N]
...