учусь работать с api и curl'ом ) задача: получить информацию с помощью api (mediawiki) и разместить её у себя на сайте (да, для удобства пользователей, могу предоставить пруф) что у меня есть: 1. запрос к api Код (PHP): sportwiki.to/api.php?action=query&titles=Аминокислоты&prop=revisions&rvprop=content&format=xml' 2. инициация curl-запроса Код (PHP): $ch = curl_init('http://sportwiki.to/api.php?action=query&titles=Аминокислоты&prop=revisions&rvprop=content&format=xml'); curl_exec($ch); // выполняем запрос curl curl_close($ch); результат: вот и стоит вопрос: как можно избавиться от подобного поведения? может, неправильный api-запрос, хотя я, признаться, верю в него)?
Re: curl, api:format и алгоритм http://sportwiki.to/api.php?action=parse&page=%D0%9F%D0%B8% ... format=txt https://en.wikipedia.org/wiki/Special:ApiSandbox#action=par ... t&page=PHP
Re: curl, api:format и алгоритм [мысли_вслух]читал-читал, *ля. странно, хотя парсом я тоже пробовал.... ладно, я получил содержимое страницы (спасибо), но вот как его теперь привести в нужный вид: без всяких ссылочек, картинок, "править" и т.п. парсить встроенными ф-ми пыха результат запроса, проверяя a, ol, img и т.п.? Добавлено спустя 15 минут 41 секунду: а, епт, это же ресурс, как я по нему пройдусь-то?
Re: curl, api:format и алгоритм Вики не против копирования и распространения энциклопедической информации, они наоборот только за. Иначе бы и публичного API они просто не стали бы делать. Так что все ок.
Re: curl, api:format и алгоритм так ведь она работает со строками, а у меня ресурс в $ch,- и преобразование ресурса в строку не имеет смысла.
Re: curl, api:format и алгоритм iNEEdhLw https://php.net/manual/ru/function.curl-exec.php#refsect1-f ... turnvalues
я, конечно, предполагаю, что я рукожоп, но я это ранее уже пробовал и вышло следующее: Код (PHP): $ch = curl_init('http://sportwiki.to/api.php?action=parse&page=Аминокислоты&format=txt'); //resource-type //resource-type curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE); curl_exec($ch);// выполняем запрос curl curl_close($ch); var_dump($ch); echo $ch; Добавлено спустя 2 минуты 34 секунды: т.е. это опять приводит к строке, с которой я нечего не могу сделать.
Возвращаемые значения mixed curl_exec ( resource $ch ) Код (PHP): function mult($a) { return $a*$a; } $result = m(10);
наткнулся на след. препятствие: на странице, которую я парсю(?), находится, походу, редирект. почитал, что необходимо указать сетопт курлу: Код (PHP): curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE); , однако теперь проблема в open_basedir (xz, chto eto) почитал, что необходимо выключить эту директиву, но хостинг не предоставляет доступа к php.ini. решил сделать это "вручную", через иде-шку, но результата не дало: Код (PHP): ini_set('open_basedir', FALSE); есть идеи, что можно сделать? з.ы. обидно, осталась последняя страница )