Есть
страница с табличной версткой где расположеньі персонажи.
Код для вьіборки всей таблицьі.
//h2[text()="Characters & Voice Actors"]/following-sibling::table[position() < last()]//tr/td[contains(@class, "borderClass bgColor") and 2 = position()]
Далее надо вьібрать тока персонажей
//tr/td[contains(@class, "borderClass bgColor") and 2 = position()]
И в них уже роль
div/small
и имя персонажа с ссьілки
/a
Как использовать результаты предварительной выборки?
Чтобьі не делать каждьій раз поиск по всему документу:
//h2[text()="Characters & Voice Actors"]/following-sibling::table[position() < last()]//tr/td[contains(@class, "borderClass bgColor") and 2 = position()]/div/small/text()
//h2[text()="Characters & Voice Actors"]/following-sibling::table[position() < last()]//tr/td[contains(@class, "borderClass bgColor") and 2 = position()]/a
$extracted = $anime->getFilterXPath('//h2[text()="Characters & Voice Actors"]/following-sibling::table[position() < last()]');
echo iterator_count($extracted); // 39
$extracted2 = $anime->getFilterXPath('//tr/td[contains(@class, "borderClass bgColor") and 2 = position()]', $extracted);
echo iterator_count($extracted2); //68
$extracted3 = $anime->getFilterXPath('//h2[text()="Characters & Voice Actors"]/following-sibling::table[position() < last()]//tr/td[contains(@class, "borderClass bgColor") and 2 = position()]');
echo iterator_count($extracted3); //39