2009-10-10 4 views
1

텍스트 파일의 목록과 도메인의 일부 페이지를 긁어 내 서버에 저장하려고합니다.스크래핑 관련 문제가 발생했습니다.

다음과 같은 코드가 도메인에 있습니다. 파일 디렉토리의 텍스트 파일 목록에서 컬링 한 다음 .html이 추가 된 파일 이름을 복사합니다.

실제로 어떤 파일에 실제로 쓰지 않고도 파일을 만들 수 있습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

<?php 
$file = fopen("list.txt","r"); 

while(! feof($file)) 
    { 
$line = fgets($file); 
$url = "http://www.????.com". $line; 
$homepage = @file_get_contents($url); 
$newname = rtrim(substr(strrchr($line, "/"), 1)) . ".html"; 
$fh = fopen($newname, 'w') or die("can't open file"); 
$stringData = $homepage; 
fwrite($fh, $stringData); 
fclose($fh); 

    } 

fclose($file); 
echo "success!"; 
?> 
+0

Nevermind --- 이전에 URL 이름을 rtrim()하는 것을 잊어 버렸기 때문에 오류가 발생했습니다. – Yahel

답변

1

file_get_contents 앞에 @를 제거해야합니다. 오류가 발생하면 @ 기호가 표시되지 않습니다.

어쩌면 fopen 래퍼가 설치되어 있지 않거나 404가 반환되었을 수도 있습니다. 해당 호출에서 경고 또는 오류가 표시되지 않으면 알 수 없습니다.

관련 문제