2012-01-11 4 views
1

몇 개의 하위 도메인으로 CPanel 호스팅이 있습니다. 각 사용자는 AWstats를 사용하여 자체 통계를 추적합니다.Webalizer 또는/및 AWstats html 파일 구문 분석

생성 된 HTML 테이블을 구문 분석하여 사용되는 대역폭을 얻는 방법이 있습니까?

고맙습니다.

답변

0

는 등의 첫 번째 행에 대해 다음과 같이, 이하 "KB F"열에서 각 행의 텍스트를 얻을 DOMXPath 쿼리를 사용

$doc = new DOMDocument; 

//Path to Webalizer or AWStats file 
$doc->Load('stats.html'); 

$xpath = new DOMXPath($doc); 

// Get the first bandwidth record in the table 
$query = "//tr[7]/td[7]/font/text()"; 

$bandwidth1 = $xpath->query($query); 

참조

2

HTML을 직접 읽는 대신에 awstats가 HTML을 렌더링하는 데 사용하는 통계 파일을 직접 사용할 수도 있습니다. cpanel은 어딘가에 액세스 할 수 있도록 저장해야합니다 (내 호스팅에서 tmp /에 있음). 간단한 텍스트 파일로 쉽게 찾을 수있는 잘 표시된 섹션이 있으며이 섹션에는 공백으로 구분 된 CSV가 테이블을 나타냅니다. parsing the files with PHP에있는이 페이지는 코드를 사용하여 수행하는 방법에 대한 정보가 필요합니다. 나는 리눅스 노하우를 가지고 sed와 awk를 사용하여 각각 파일을 잘라내 요약에서 필요한 통계를 수집하는 데 필요한 열을 반환 할 수 있다고 확신한다.