현재 정규 표현식을 사용하지 않고 개발자 추적기를 사용하고 있습니다. 특정 부분에서 HTML을 구문 분석 할 때로드 블록을 쳤습니다.PHP DOM, 특정 div 내의 텍스트 찾기
이<td class="alt1" id="td_post_139718">
<!-- message, attachments, sig -->
<!-- icon and title -->
<div class="smallfont">
<img class="inlineimg" src="images/icons/icon1.gif" alt="Default" border="0" />
<strong>Re: TERA's E3 2010 Coverage</strong>
</div>
내 코드 :
$titleArray = array();
foreach($idArray as $id) {
$title = $dom->getElementById('td_post_'.$id);
$smallFont = $title->getElementsByTagName("div");
echo $smallFont->nodeValue;
}
그것은 산출 :
Notice: Undefined property: DOMNodeList::$nodeValue in C:\wamp\www\crawler\crawler.php on line 71
Notice: Undefined property: DOMNodeList::$nodeValue in C:\wamp\www\crawler\crawler.php on line 71
Notice: Undefined property: DOMNodeList::$nodeValue in C:\wamp\www\crawler\crawler.php on line 71
내가 내에있는 내의 텍스트를 찾기 위해 노력하고 내가 구문 분석하려고 무엇
역동적 인 사람.
나는 모든 종류의 조합을 시도해보고 작동 시키려고했지만 그 효과를 얻을 수있었습니다.
목록에 하나의 값만 있어도 'DOMNodeList'를 반환한다는 점에 유의하십시오. 노드 목록을 배열로 취급하거나'item' 메쏘드를 사용할 수 있습니다 :'echo $ smallFont-> item (0) -> nodeValue' – Charles
이 방법은 메시지에서 그것을 분리하기 위해 몇 가지 반복을 추가 한 후에 작동합니다 이 코드 아래의 데이터. cURL 정규 표현식을 사용하거나 DOM 반복을 2 회 반복하는 것이 더 효율적이라고 생각합니까? – Honzo
정규 표현식이 HTML에서 올바르게 작동하기에 충분한 정교함을 가지지 않으므로 DOM을 사용하는 것이 ** 정확합니다 **. – Artefacto