php использует CURL для захвата записи whois - PullRequest
1 голос
/ 09 февраля 2010

Пример: http://www.whois.net/whois/hotmail.com

При открытии в браузере отображается вывод.

При использовании вызова curl ничего не отображается.

Что не так? Я хочу вернуть весь результат страницы, а затем использовать регулярное выражение для извлечения данных со сроком действия: 29 марта 2015 г., 00:00:00.

$postfields= null; 
$postfields["noneed"] = "";
$queryurl= "http://www.whois.net/whois/hotmail.com";

$results= getUrlContent($postfields, $queryurl);
echo $results;


 function getUrlContent($postfields,$api_url)
 {  
  if( !extension_loaded('curl') ){die('You need to load/activate the cURL extension (http://www.php.net/cURL).'); }

  $ch = curl_init();  
  curl_setopt($ch, CURLOPT_URL, $api_url); // set the url to fetch
  curl_setopt($ch, CURLOPT_HEADER, 0); // set headers (0 = no headers in result)
  curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // type of transfer (1 = to string)
  curl_setopt($ch, CURLOPT_TIMEOUT, 10); // time to wait in seconds
  curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);  
  $content = curl_exec($ch); // make the call  
  curl_close($ch);  
  return $content;
 } 

Ответы [ 2 ]

3 голосов
/ 09 февраля 2010

Whois.net проверяет user agent.Поэтому добавьте их в свою функцию перед вызовом curl_exec

$useragent="Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.1) Gecko/20061204 Firefox/2.0.0.1";
curl_setopt($ch, CURLOPT_USERAGENT, $useragent);
1 голос
/ 18 апреля 2015

Ошибка, которую вы видите, не связана с whois.com, она показывает, что вы не включили модуль cURL для своего PHP. Попробуйте сначала включить модуль PHP cURL.

Если вы не уверены, как включить модуль PHP cURL, следуйте этой теме: Как включить cURL в PHP / XAMPP

Shirish

...