Итак, я пишу приложение на PHP для проверки своих сайтов, если все ссылки действительны, поэтому я могу их обновить, если потребуется.Извлечение определенных частей HTML из PHP
И у меня возникла проблема. Я попытался использовать объекты SimpleXml и DOMDocument для извлечения тегов, но когда я запускаю приложение с образцовым сайтом, я обычно получаю массу ошибок, если я использую тип объекта SimpleXml.
Итак, есть способ отсканировать html-документ для атрибутов href, который так же прост, как с помощью SimpleXml?
<?php
// what I want to do is get a similar effect to the code described below:
foreach($html->html->body->a as $link)
{
// store the $link into a file
foreach($link->attributes() as $attribute=>$value);
{
//procedure to place the href value into a file
}
}
?>
так что в основном я ищу способ преформировать вышеуказанную операцию. Дело в том, что я в настоящее время запутался относительно того, как я должен обрабатывать строку, которую я получаю с html-кодом в ней ...
только для того, чтобы быть ясным, я использую следующий примитивный способ получения HTML-файл:
<?php
$target = "http://www.targeturl.com";
$file_handle = fopen($target, "r");
$a = "";
while (!feof($file_handle)) $a .= fgets($file_handle, 4096);
fclose($file_handle);
?>
Любая информация будет полезна, а также любые другие варианты языка, где вышеуказанная проблема является более элегантно неподвижная (Python, C или C++)
хорошо, я определенно буду давать этот снимок, нужно искать несколько вещей, но я думаю, что теперь не будет проблемой, когда я вижу, что мне нужно искать –
DOMDocument и DOMXPath - это довольно удивительно и очень милостиво даже для плохого/сломанного HTML. Есть грузы, которые вы можете сделать с ним :) –
да, я только начал экспериментировать с DOMXPath, и это похоже на забаву. Однако мне понадобится более глубокая документация, чем тот, который представлен на php.net, примеры не столь информативны, как я бы хотел, чтобы они были. –