2014-10-24 2 views
1

Я попытался использовать пример набора данных сова с помощью службы веб-скребка на import.io, но когда я попытаюсь интегрировать это с примером PHP, я постоянно получаю «NULL» как результат.null значение с примером PHP-скрипт из import.io

$userGuid = "MY_USER_ID"; 
$apiKey = "MY_API_KEY"; 

// Issues a query request to import.io 
function query($connectorGuid, $input, $userGuid, $apiKey) { 

    $url = "https://query.import.io/store/connector/" . $connectorGuid . "/_query?_user=" . urlencode($userGuid) . "&_apikey=" . urlencode($apiKey); 

    $ch = curl_init($url); 
    curl_setopt($ch, CURLOPT_HTTPHEADER, array(
     "Content-Type: application/json", 
     "import-io-client: import.io PHP client", 
     "import-io-client-version: 2.0.0" 
    )); 
    curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode(array("input" => $input))); 
    curl_setopt($ch, CURLOPT_POST, 1); 
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
    curl_setopt($ch, CURLOPT_HEADER, 0); 
    $result = curl_exec($ch); 
    curl_close($ch); 

    return json_decode($result); 
} 

// Query for tile owltest 
echo "Test"; 
$result = query("71e57dbc-9996-4fa3-8715-c564a347d002", array(
    "webpage/url" => "http://owlkingdom.com/", 
), $userGuid, $apiKey, false); 
var_dump($result); 

Я пробовал это на нескольких серверах и без радости. Я так и не изменил код. Если я вытащил URL-адрес в свой браузер, я получу набор данных, возвращенный мне в JSON OK.

У кого-либо еще были проблемы с примерами сценариев?

+0

Включили ли вы все необходимые модули в php и apache? Вы помещаете свой массив ввода в массив, так что вы json_encode url в массиве в массиве, вы уверены, что хотите этого? (это создает следующий json: '{input: {webpage/url:« Ваш URL »}}') –

+0

Это точный скрипт из учебника import.io, поэтому я предполагаю, что он должен работать следующим образом. завиток включен, и я просто запускаю отдельный скручивающий тест, и это работает нормально. –

+0

Получил это. Это было соединение SSL, которое привело к сбою. –

ответ

1

Изменено

$url = "https://query.import.io/store/connector/" . $connectorGuid . "/_query?_user=" . urlencode($userGuid) . "&_apikey=" . urlencode($apiKey); 

в

$url = "http://query.import.io/store/connector/" . $connectorGuid . "/_query?_user=" . urlencode($userGuid) . "&_apikey=" . urlencode($apiKey); 

Какая проблема решена. Я считаю, что вы также можете изменить параметры curl, чтобы принять SSL-сертификат сайта, если требуется безопасное соединение.

+0

Вы знаете, что есть модуль в apache или php, который позволяет использовать ssl? –