Не получается подключить JSON задание для php из документации Код из мануала: Код: $aparser = 'http://127.0.0.1:9091/API'; $request = json_encode(array( 'action' => 'oneRequest', 'data' => array ( 'parser' => 'SE::Google', 'preset' => 'Pages Count use Proxy', 'query' => 'test' ), 'password' => 'pass' )); $ch = curl_init($aparser); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $request); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: ' . strlen($request))); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/plain; charset=UTF-8')); $response = curl_exec($ch); curl_close($ch); $response = json_decode($response, true); echo $response['data']['resultString']; Задание из парсера Код: { "password": "", "action": "addTask", "data": { "preset": "sdor-api", "configPreset": "default", "parsers": [ [ "SE::Google::Modern", "default", { "type": "override", "id": "proxyretries", "value": "13" }, { "type": "override", "id": "useproxy", "value": true }, { "type": "override", "id": "queryformat", "value": "$query" }, { "type": "override", "id": "formatresult", "value": "$serp.format('$snippet\\n')" }, { "type": "override", "id": "proxybannedcleanup", "value": "0" }, { "type": "override", "id": "pagecount", "value": 10 }, { "type": "override", "id": "linksperpage", "value": 100 }, { "type": "override", "id": "Util_ReCaptcha2_preset", "value": "rc2 xevil" }, { "type": "override", "id": "lr", "value": "" } ] ], "resultsFormat": "$p1.preset", "resultsSaveTo": "file", "resultsFileName": "$datefile.format().txt", "additionalFormats": [], "resultsUnique": "no", "queriesFrom": "text", "queryFormat": [ "$query" ], "uniqueQueries": false, "saveFailedQueries": false, "iteratorOptions": { "onAllLevels": false, "queryBuildersAfterIterator": false, "queryBuildersOnAllLevels": false }, "resultsOptions": { "overwrite": false }, "doLog": "no", "keepUnique": "No", "moreOptions": false, "resultsPrepend": "", "resultsAppend": "", "queryBuilders": [], "resultsBuilders": [ { "source": [ 0, [ "serp", "snippet" ] ], "type": "removeHtml", "array": "serp", "to": "snippet" } ], "configOverrides": [], "runTaskOnComplete": null, "useResultsFileAsQueriesFile": false, "runTaskOnCompleteConfig": "default", "toolsJS": "", "prio": 5, "queries": "google" } } Пробовал добавить его в Код: $request = json_encode(array( CODE )); Не получилось
Удалось завести скрипт следующим образом Код: <?php $aparser = 'http://ip:9091/API'; // $request = json_encode(array( // 'action' => 'oneRequest', // 'data' => array ( // 'parser' => 'SE::Google', // 'preset' => 'Pages Count use Proxy', // 'query' => 'test' // ), // 'password' => 'pass' // )); $request = <<<JSON { "password": "", "action": "addTask", "data": { "preset": "sdor-api", "configPreset": "default", "parsers": [ [ "SE::Google::Modern", "default", { "type": "override", "id": "proxyretries", "value": "13" }, { "type": "override", "id": "useproxy", "value": true }, { "type": "override", "id": "queryformat", "value": "$query" }, { "type": "override", "id": "formatresult", "value": "$serp.format('$snippet\\n')" }, { "type": "override", "id": "proxybannedcleanup", "value": "0" }, { "type": "override", "id": "pagecount", "value": 10 }, { "type": "override", "id": "linksperpage", "value": 100 }, { "type": "override", "id": "Util_ReCaptcha2_preset", "value": "rc2 xevil" }, { "type": "override", "id": "lr", "value": "" } ] ], "resultsFormat": "$p1.preset", "resultsSaveTo": "file", "resultsFileName": "$datefile.format().txt", "additionalFormats": [], "resultsUnique": "no", "queriesFrom": "text", "queryFormat": [ "$query" ], "uniqueQueries": false, "saveFailedQueries": false, "iteratorOptions": { "onAllLevels": false, "queryBuildersAfterIterator": false, "queryBuildersOnAllLevels": false }, "resultsOptions": { "overwrite": false }, "doLog": "no", "keepUnique": "No", "moreOptions": false, "resultsPrepend": "", "resultsAppend": "", "queryBuilders": [], "resultsBuilders": [ { "source": [ 0, [ "serp", "snippet" ] ], "type": "removeHtml", "array": "serp", "to": "snippet" } ], "configOverrides": [], "runTaskOnComplete": null, "useResultsFileAsQueriesFile": false, "runTaskOnCompleteConfig": "default", "toolsJS": "", "prio": 5, "queries": "privet" } } JSON; $ch = curl_init($aparser); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $request); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Length: ' . strlen($request))); curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: text/plain; charset=UTF-8')); $httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE); $response = curl_exec($ch); curl_close($ch); //$response = json_decode($response, true); echo $response['data']['resultString']; Задание добавилось в парсер но не выполняется, скрин добавил в аттач Спойлер: Пресет eyJwcmVzZXQiOiJzZG9yLWFwaSIsInZhbHVlIjp7InByZXNldCI6InNkb3ItYXBp IiwicGFyc2VycyI6W1siU0U6Okdvb2dsZTo6TW9kZXJuIiwiZGVmYXVsdCIseyJ0 eXBlIjoib3ZlcnJpZGUiLCJpZCI6InByb3h5cmV0cmllcyIsInZhbHVlIjoiMTMi fSx7InR5cGUiOiJvdmVycmlkZSIsImlkIjoidXNlcHJveHkiLCJ2YWx1ZSI6dHJ1 ZX0seyJ0eXBlIjoib3ZlcnJpZGUiLCJpZCI6InF1ZXJ5Zm9ybWF0IiwidmFsdWUi OiIkcXVlcnkifSx7InR5cGUiOiJvdmVycmlkZSIsImlkIjoiZm9ybWF0cmVzdWx0 IiwidmFsdWUiOiIkc2VycC5mb3JtYXQoJyRzbmlwcGV0XFxuJykifSx7InR5cGUi OiJvdmVycmlkZSIsImlkIjoicHJveHliYW5uZWRjbGVhbnVwIiwidmFsdWUiOiIw In0seyJ0eXBlIjoib3ZlcnJpZGUiLCJpZCI6InBhZ2Vjb3VudCIsInZhbHVlIjox MH0seyJ0eXBlIjoib3ZlcnJpZGUiLCJpZCI6ImxpbmtzcGVycGFnZSIsInZhbHVl IjoxMDB9LHsidHlwZSI6Im92ZXJyaWRlIiwiaWQiOiJVdGlsX1JlQ2FwdGNoYTJf cHJlc2V0IiwidmFsdWUiOiJyYzIgeGV2aWwifSx7InR5cGUiOiJvdmVycmlkZSIs ImlkIjoibHIiLCJ2YWx1ZSI6IiJ9XV0sInJlc3VsdHNGb3JtYXQiOiIkcDEucHJl c2V0IiwicmVzdWx0c1NhdmVUbyI6ImZpbGUiLCJyZXN1bHRzRmlsZU5hbWUiOiIk ZGF0ZWZpbGUuZm9ybWF0KCkudHh0IiwiYWRkaXRpb25hbEZvcm1hdHMiOltdLCJy ZXN1bHRzVW5pcXVlIjoibm8iLCJxdWVyaWVzRnJvbSI6InRleHQiLCJxdWVyeUZv cm1hdCI6WyIkcXVlcnkiXSwidW5pcXVlUXVlcmllcyI6ZmFsc2UsInNhdmVGYWls ZWRRdWVyaWVzIjpmYWxzZSwiaXRlcmF0b3JPcHRpb25zIjp7Im9uQWxsTGV2ZWxz IjpmYWxzZSwicXVlcnlCdWlsZGVyc0FmdGVySXRlcmF0b3IiOmZhbHNlLCJxdWVy eUJ1aWxkZXJzT25BbGxMZXZlbHMiOmZhbHNlfSwicmVzdWx0c09wdGlvbnMiOnsi b3ZlcndyaXRlIjpmYWxzZX0sImRvTG9nIjoibm8iLCJrZWVwVW5pcXVlIjoiTm8i LCJtb3JlT3B0aW9ucyI6ZmFsc2UsInJlc3VsdHNQcmVwZW5kIjoiIiwicmVzdWx0 c0FwcGVuZCI6IiIsInF1ZXJ5QnVpbGRlcnMiOltdLCJyZXN1bHRzQnVpbGRlcnMi Olt7InNvdXJjZSI6WzAsWyJzZXJwIiwic25pcHBldCJdXSwidHlwZSI6InJlbW92 ZUh0bWwiLCJhcnJheSI6InNlcnAiLCJ0byI6InNuaXBwZXQifV0sImNvbmZpZ092 ZXJyaWRlcyI6W10sInJ1blRhc2tPbkNvbXBsZXRlIjpudWxsLCJ1c2VSZXN1bHRz RmlsZUFzUXVlcmllc0ZpbGUiOmZhbHNlLCJydW5UYXNrT25Db21wbGV0ZUNvbmZp ZyI6ImRlZmF1bHQiLCJ0b29sc0pTIjoiIiwicHJpbyI6NSwicXVlcmllcyI6ImFw cGxlIG1hYyIsImNhdGVnb3J5IjpbInRlc3QiXX19 Задача, получить контент через апи, но парсер получает результаты с задержкой так как разгадывает рекачпу.
Здравствуйте. Настройте шаблон для разгадывания рекапчи и выберите его в задании. Подробнее о том как настроить рекапчу здесь
Show API request показывает запрос в JSON, соответственно чтобы получить из него PHP структуру надо сделать json_decode(о чем кстати уже было рассказано в личной переписке) Рекомендую почитать мануалы по json_encode/json_decode http://php.net/manual/ru/function.json-decode.php