Разбор (невалиден) HTML от друг уебсайт с помощта на PHP

Опитвам се да анализирам следния HTML от следния URL адрес:

http://md5.rednoize.com/?q=fbade9e36a3f36d3d676c1b808451dd7

Кодът:

    $html = file_get_contents($url.$hash);
    $config = array(
      'clean' => 'yes',
      'output-html' => 'yes',
    );
    $tidy = tidy_parse_string($html, $config, 'utf8');
    $tidy->cleanRepair();
    $dom = new DOMDocument;
    $dom->loadHTML($tidy);

    $result = $dom->getElementById('result');

Въпреки това е невалиден:

Warning: DOMDocument::loadHTML() [<a href='/bgdomdocument.loadhtml'>domdocument.loadhtml</a>]: ID switcher already defined in Entity, line: 128 in

Има ли начин все още да можете да го анализирате?


person PeeHaa    schedule 09.07.2011    source източник
comment
Може би глупава забележка, но не можете ли просто да поставите 'clean' =› 'yes' на 'clean' =› 'no', ?   -  person Hans Wassink    schedule 10.07.2011
comment
@Hans: Защо бих искал да направя това?   -  person PeeHaa    schedule 10.07.2011
comment
Какво се случва, ако промените $dom->loadHTML($tidy); на $dom->loadHTML($tidy->value);   -  person Glass Robot    schedule 10.07.2011


Отговори (1)


Можете да опитате да го анализирате, след като изключите стриктната проверка за грешки:

$dom = new DOMDocument;
$dom->strictErrorChecking = FALSE;
$dom->loadHTML($tidy);
person Michael Berkowski    schedule 09.07.2011