0

URL からすべての JavaScript、CSS、画像ソースを取得したいと考えています。これには単純な dom parse を使用しています。これは私の現在のコードです:

URL をロード:

   $html = file_get_html($n);

JavaScript ソースを解析します。

foreach($html->find('script') as $element){ 
    $value = $element->src;
        if ($value != null){        
            if (strpos($value, '//') === 0) {
            } else {
                if(filter_var($value, FILTER_VALIDATE_URL)){
                  $array[] = strip_tags($value);
                } 
                else {
                  $array[] = strip_tags($n.$value);  
                }       
            }
        }
    }

画像ソースの解析:

foreach($html->find('img') as $element){ 
    $value = $element->src;
        if ($value != null){
            if (strpos($value, '//') === 0) {
            } else {        
                if(filter_var($value, FILTER_VALIDATE_URL)){
                  $array[] = strip_tags($value);
                } 
                else {
                  $array[] = strip_tags($n.$value);
                }
            }
        }
    }

css ソースを解析します。

foreach($html->find('link') as $element){ 
    $value = $element->href;
        if ($value != null){
            if (strpos($value, '//') === 0) {
            } else {    
                if(filter_var($value, FILTER_VALIDATE_URL)){
                  $array[] = strip_tags($value);
                } 
                else {
                  $array[] = strip_tags($n.$value);
                }
            }
        }
    }

私の唯一の問題は css の解析です。このようなものを使用したいと思います -foreach($html->find('link rel="stylesheet"') as $element)が、そのようには機能しません。これらを解析するためのより良い (より正確または適切な) 方法はありますか?

4

1 に答える 1

0

これを試して:$html->find('link[rel=stylesheet]')

于 2013-03-17T06:06:29.643 に答える