Как получить информацию о фотографии вконакте

prog90

Новичок
Как получить информацию о фотографии вконтакте по ее id?

Использовать метод GetById не получается:
PHP:
require 'vkapi.class.php';

$api_id = 1234; // Insert here id of your application
$secret_key = ' some'; // Insert here secret key of your application

$VK = new vkapi($api_id, $secret_key);

$resp = $VK->api('photos.getById', array('photos'=>'123123123'));

print_r($resp);
?>

А разобрать html страницы с фото (с всплывающим окном) и извлечь оттуда src тоже неизвестно как. Потому что html с фотографией генерируется через javascript.

Нужно чтобы пользователь мог добавить фото из вконтакте, заполнив url фотографии. Но при этом он сам не может взять реальный url фотографии, а наверное может только скопировать http://vk.com/photo_userid_photoid
 

prog90

Новичок
Фото открытое для всех. не требует вступления друзья или авторизации
 

Ragazzo

TDD interested
любой парсинг чужого контента запрещен правилами форума.
 

prog90

Новичок
А почему?
Имеется ввиду, что заказчик хочет, чтобы пользователь мог добавлять свои фотографии из своего аккаунта на vk.com открытые для публичного доступа
 

флоппик

promotor fidei
Команда форума
Партнер клуба
любой парсинг чужого контента запрещен правилами форума.
Правилами форума запрещен парсинг нарушающий права владельца контента и существующее законодательство. Использование предоставленного для этой цели АПИ таковым нарушением прав не является.
 

prog90

Новичок
Так кто нибудь знает? неужели никто этим не занимлся?
 

prog90

Новичок
Sufir
Он просто не работает. Vkontakte возвращает ошибку в виде xml документа, где написано что этот метод не определен: Вот текст ошибки:
PHP:
Array ( [error] => Array ( [error_code] => 3 [error_msg] => Unknown method passed [request_params] => Array ( [0] => Array ( [key] => api_id [value] => 1111111) [1] => Array ( [key] => format [value] => json ) [2] => Array ( [key] => method [value] => photos.getById ) [3] => Array ( [key] => photos [value] => 11111111111) [4] => Array ( [key] => random [value] => 8064 ) [5] => Array ( [key] => timestamp [value] => 1331842148 ) [6] => Array ( [key] => v [value] => 3.0 ) [7] => Array ( [key] => sig [value] => 111111111111111) ) ) )
api_id, sig и photos - я изменил
 

флоппик

promotor fidei
Команда форума
Партнер клуба
С сервера доступны далеко не все методы. Точно доступны методы, начинающиеся на secure, а также некоторые другие. В документации я этого не нашел, определяется методом тыка.
http://habrahabr.ru/qa/5408/
Я потратил ровно 40 секунд, что бы это найти. 5 ссылка в гугле.
 

prog90

Новичок
флоппик
Спасибо.
А как правильно сделать чтобы пользователь мог добавить свои фото из вконтакте на сайт? Нужно создать Open Api приложение для вконтакте (тип Веб-сайт), и потом использовать авторизацию вконтакте на сайте? И когда пользователь авторизуется или установит программу вконтакте и выберет "предоставить доступ к фотографиям", тогда уже показать окно для ввода ссылки на страницу с фотографией вконтакте? А там уже пользоваться методом Api "photos.getById", чтобы по url фотографии определить ее путь и скопировать на сервер (или сохранить его на сервере).
Правильно ли это будет?
Или можно как-то по-другому. И еще - что можно сделать, если заказчик потребует сделать добавление фото от всех пользователей, а не от текущего.
И не рассматривает ли это вконтакте как воровство контента? Если разные пользователи социальной сети будут добавлять фотографии из вконтакте к себе в фотоальбом.
 

флоппик

promotor fidei
Команда форума
Партнер клуба
И еще - что можно сделать, если заказчик потребует сделать добавление фото от всех пользователей, а не от текущего.
И не рассматривает ли это вконтакте как воровство контента? Если разные пользователи социальной сети будут добавлять фотографии из вконтакте к себе в фотоальбом.
Пользователь должен дать разрешение на получение доступа к своим данным. Это условие оферты по использованию VK API. Поэтому попытка обхода считается воровством, да.

флоппик
Нужно создать Open Api приложение для вконтакте (тип Веб-сайт), и потом использовать авторизацию вконтакте на сайте? И когда пользователь авторизуется или установит программу вконтакте и выберет "предоставить доступ к фотографиям", тогда уже показать окно для ввода ссылки на страницу с фотографией вконтакте? А там уже пользоваться методом Api "photos.getById", чтобы по url фотографии определить ее путь и скопировать на сервер (или сохранить его на сервере).
Правильно ли это будет?
Да, именно так и надо.
 

prog90

Новичок
А если одновременно будут пытаться загружать фотографии тысячи пользователей, то разрешит ли вконтакте по много запросов? И стоит ли это использовать на практике. Просто заказчик немного говорит о том, для чего ему это нужно. Поэтому непонятно подойдет ли ему такой вариант.
Для чего ему вообще может быть это нужно - предоставить возможность пользователям загружать фотографии с социальных сетей в свою социальную сеть и по возможности не хранить фотографии, а только url?
 

Sufir

Я не волшебник, я только учусь
одновременно будут пытаться загружать фотографии тысячи пользователей
по возможности не хранить фотографии, а только url?
Экономить место на жёстком диске с посещаемостью в тысячи одновременных запросов? Ну-ну...
 
Сверху