2013-05-17 3 views
-1

Я использую PHP для очистки нескольких веб-сайтов. Информация об изображении содержится в скрипте.Ищете регулярное выражение для вывода информации img src из встроенного Javascript с помощью PHP

<body> 
    <div>something</div> 
    <div>Something else</div> 
    <script type="text/javascript" language="javascript"> 
     var imgs = ['<img alt="image1" class="happy-image" src="http://example.com/image1.jpg" title = "Image 1">, <img alt="image2" class="happy-image" src="http://example.com/image2.jpg" title = "Image 2">]; 

    </script> 
</body> 

Я хотел бы, чтобы извлечь из этой строки, используя PHP информацию, связанную с этим изображением и даже не знаю, с чего начать писать регулярные выражения, чтобы это произошло.

+0

слишком плохой вы не можете использовать javascript. вы можете создать элемент из строки, а затем извлечь атрибут 'src' – gillyspy

+0

. О, смотрите, это повторение. http://stackoverflow.com/questions/138313 – gillyspy

+0

Возможный дубликат [Как извлечь img src, title и alt из html с помощью php?] (http://stackoverflow.com/questions/138313/how-to-extract- img-src-title-and-alt-from-html-using-php) – halfer

ответ

2

Ваша самая безопасная ставка заключалась бы в анализе HTML с DOMDocument, извлечении содержимого скрипта, затем разобрать , что как HTML. Это даст вам доступ к изображениям. Вроде так:

$dom = new DOMDocument(); 
$dom->loadHTML($your_html_here); 
$script = $dom->getElementsByTagName('script')->item(0); 
$dom->loadHTML($script->nodeValue); 
$imgs = $dom->getElementsByTagName('img'); 
foreach($imgs as $img) { 
    $src = $img->getAttribute("src"); 
    // do something 
} 
+0

это классно, я не знал, что вы можете сделать это с помощью php. – gillyspy

+0

http://br.php.net/manual/en/book.dom.php –