curl을 사용하여 웹 사이트의 내용을 가져 오려고합니다. 내가 얻는 오류가 있습니다.Curl을 사용할 때 "액세스하기 전에 브라우저를 확인하는 중 ..."오류가 발생했습니다.
내가 다른 컬의 속성하지만 여전히 행운을 변경 시도 "roosterteeth.com에 액세스하기 전에 브라우저 확인". 나는 PHP 간단한 HTML 돔 파서을 사용하려했지만 다시 한번 운이 없다.
아래는 현재 코드입니다.
<?php
$divContents = array();
$userAgent = 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0';
$html = curl_init("http://roosterteeth.com/home.php");
curl_setopt($html, CURLOPT_RETURNTRANSFER, true);
curl_setopt($html, CURLOPT_BINARYTRANSFER, true);
curl_setopt($html, CURLOPT_USERAGENT, $userAgent);
curl_setopt($html, CURLOPT_SSL_VERIFYPEER, false);
$content = curl_exec($html);
foreach($content->find("div.streamIndividual") as $div) {
$divContents[] = $div->outertext; }
file_put_contents("cache.htm", implode(PHP_EOL, $divContents));
$hash = file_get_contents("pg_1_hash.htm");
$cache = file_get_contents("cache.htm");
if ($hash == ($pageHash = md5($test))) {
} else {
$fpa = fopen("pg_1.htm", "w");
fwrite($fpa, $cache);
fclose($fpa);
$fpb = fopen("pg_1_hash.htm", "w");
fwrite($fpb, $pageHash);
fclose($fpb);
}
?>
는 코드 위에 서있는 에 콘텐츠를 얻을 수없는 명령을 찾을 인해 다른 오류를 표시한다. 아래 코드는 내가 사이트에서 얻은 오류를 보여줍니다.
<?php
$divContents = array();
$userAgent = 'Mozilla/5.0 (Windows NT 5.1; rv:31.0) Gecko/20100101 Firefox/31.0';
$html = curl_init("http://roosterteeth.com/home.php");
curl_setopt($html, CURLOPT_RETURNTRANSFER, true);
curl_setopt($html, CURLOPT_BINARYTRANSFER, true);
curl_setopt($html, CURLOPT_USERAGENT, $userAgent);
curl_setopt($html, CURLOPT_SSL_VERIFYPEER, false);
$content = curl_exec($html);
echo $content;
?>
오류에 대한 내 직감은 서버가 내가 봇이라고 생각한다는 것입니다. (나는 그것을 믿지 않는 것입니다). curl을 사용하여 내가 클라이언트 인 것처럼 가장 할 수 있는지 확인하고 검사기를 우회 할 수 있는지 확인했지만 성공하지 못했습니다. 나는 누군가가 이것을 밝힐 수 있기를 희망한다. 액세스하려는 사이트가 워드 프레스를 사용하는 경우
시각적 오류가의 definetly의 보안 문제를 가지고,이 link.
당신의 시간 :
사이트가 쿠키를 확인합니다. 쿠키가 존재하지 않으면 쿠키를 설정하고 브라우저를 리디렉션합니다. CURL 전송을 위해 쿠키를 활성화해야합니다. 하지만 쿠키가 자바 스크립트로 설정 될 것 같습니다 ... – Eugen