Php DOMXPath解析url的速度很慢';s
我试图解析几个url,只是想看看是否存在某个div id。首先我尝试使用simplehtmldom,但速度非常慢,所以我最近尝试的是domxpath。加载页面所需的时间大致相同。我对这一切都很陌生,所以我不知道解析有什么限制。您会注意到,在我的代码中,我使用unset尝试在每次循环之后清除内存。这对性能没有任何影响,但我只是保留了它,因为它不会影响任何东西,我不确定是否有必要在那里 所以..我的问题是,看看下面的代码,我能做些什么来更快地解析这些url吗?还有,解析50个url是不是我想做的事情太多了?先谢谢你Php DOMXPath解析url的速度很慢';s,php,dom,xpath,domxpath,Php,Dom,Xpath,Domxpath,我试图解析几个url,只是想看看是否存在某个div id。首先我尝试使用simplehtmldom,但速度非常慢,所以我最近尝试的是domxpath。加载页面所需的时间大致相同。我对这一切都很陌生,所以我不知道解析有什么限制。您会注意到,在我的代码中,我使用unset尝试在每次循环之后清除内存。这对性能没有任何影响,但我只是保留了它,因为它不会影响任何东西,我不确定是否有必要在那里 所以..我的问题是,看看下面的代码,我能做些什么来更快地解析这些url吗?还有,解析50个url是不是我想做的事情
<?php
require_once("include.all.php");
if ( !class_exists( "Standings" ) ) {
Class Standings {
public static function Status( $url ) {
$html = file_get_contents($url);
$doc = new DOMDocument;
$previous_value = libxml_use_internal_errors(TRUE);
$doc->Loadhtml($html);
libxml_clear_errors();
libxml_use_internal_errors($previous_value);
$element = $doc->getElementById( 'cams_view_top' );
if ( $element == null ) {
echo "<img src='images/offline.fw.png'/>";
unset( $doc,$html );
} else {
echo "<img src='images/online.fw.png'/>";
unset( $doc,$html );
}
}
}
}
?>
您是否尝试过使用脚本只解析一个url来测量时间?可能是某个特定url的获取和处理时间太长。那些文件格式正确吗?。另外,您的描述很清楚,但是这个想法似乎没有多大意义,为什么要解析那么多URL/页面来找到那个div?多长是“很长”?哪个部分需要很长时间(获取网站、解析网站、查询网站)?你是否考虑过并行化执行?