2012-09-10 1 views
0

외부 웹 사이트에서 데이터를 검색하려고하는데, 해당 웹 사이트는 5 분마다 1 텍스트 줄/URL을 변경합니다. 이제이 URL을 가져 와서이 URL과 함께 양식 (5 분마다)을 제출하고 내 DB (Cron 작업의 PHP 파일에 저장)에 저장하려고합니다. 대신 MySQL DB에 직접 삽입하십시오.Cron 작업/데이터 가져 오기 (Curl?) 양식에 삽입하여 제출하십시오.

이것도 가능합니까? 외부 페이지에서

1) 얻기 URL 및 5 분마다 이상 실행하여 DB

2)에 저장 : 내가 알고있는 것처럼

답변

2

, 당신은이 작업을 취득 할 수 있습니다. 여기

그들은 :

1) CURL 좋은 방법입니다, 모든 서버에서 사용할 수 있습니다. 또한 서버에서 제한되지 않은 file_get_contents를 시도 할 수도 있습니다. Curl 함수는 다음과 같습니다.

<?php 
function curl_get_file_contents($URL) 
    { 
     $c = curl_init(); 
     curl_setopt($c, CURLOPT_RETURNTRANSFER, 1); 
     curl_setopt($c, CURLOPT_URL, $URL); 
     $contents = curl_exec($c); 
     curl_close($c); 

     if ($contents) return $contents; 
      else return FALSE; 
    } 
?> 

이 함수는 페이지 내용이있는 문자열을 반환합니다. 아마 거기에서 URL을 추출해야하고, URL의 길이가 일정하거나 STRPOS이면 PHP SUBSTR을 사용해야 할 것입니다. URL을 얻으면 DB에 저장하십시오. 양식을 사용할 필요가 없습니다.

2) 5 분마다 스크립트를 실행하는 가장 간단한 방법은 javascript를 사용하는 것입니다.

<html> 
<head> 
<script type="text/JavaScript"> 
<!-- 
function timedRefresh(timeoutPeriod) { 
    setTimeout("location.reload(true);",timeoutPeriod); 
} 
// --> 
</script> 
</head> 
<body onload="JavaScript:timedRefresh(300000);"> 
<?php // your code here 

이 페이지는 5 분마다 (300000 밀리 초)를 새로 고침하고 PHP 스크립트 때마다 실행됩니다 -하지만 당신은 끊임없이 브라우저에서 열이 있어야 : 그것은 같이 갈 것입니다. 그것은 문제입니다. CRON을 사용합니다 (거의 사용하지 않았으므로 여기서는 도움이되지 않습니다).

관련 문제