Необходимо получить через пхп скрипт пост из livejournal.
Парсить - не вариант, так как пост может быть и приватным.
Везде натыкаюсь только на один вариант решения проблемы
CODE ( text):
скопировать код в буфер обмена
function view_LJ($itemid) { $lj_userid="login"; $lj_passwd="pass"; $client=new xmlrpc_client("/interface/xmlrpc", "www.livejournal.com", 80); $params = new xmlrpcval( array( 'username' => new xmlrpcval($lj_userid,'string'), 'password' => new xmlrpcval($lj_passwd,'string'), 'ver' => new xmlrpcval('1','string'), 'lineendings' => new xmlrpcval('pc','string'), 'selecttype' => new xmlrpcval('one','string'), 'itemid' => new xmlrpcval('itemid','string'), 'year' => new xmlrpcval($year,'int'), 'month' => new xmlrpcval($month,'int'), 'day' => new xmlrpcval($day,'int')),'struct' ); $msg = new xmlrpcmsg('LJ.XMLRPC.getevents'); $msg->addparam($params); $client->setDebug(0); $result = $client->send($msg); if ($result->faultCode() != 0) { print "Ошибка: ".$result->faultString(); return; }; $v=$result->value(); $events=$v->structMem('events'); $event = $events->arrayMem(0); $itemid_xml=$event->structMem('itemid'); $eventtime_xml=$event->structMem('eventtime'); $subject_xml=$event->structMem('subject'); $event_xml=$event->structMem('event'); $itemid=$itemid_xml->scalarVal(); $subject=$subject_xml->scalarVal(); $eventtime=$eventtime_xml->scalarVal(); $event=$event_xml->scalarVal(); printf("$eventtime<br /><br />"); printf("$subject<br /><br />"); printf("$event<br />"); } view_LJ(74080); // номер поста который нужно сграбить
нашел в инете классы xmlrpc_client и xmlrpcval(без них скрипт ругался).
ЗАпускаю - в итоге скрипт совершенно ничего не выводит.Тупо пустой лист.
Может кто-то знает как исправить или видел другие реализации(Отредактировано автором: 18 Октября, 2009 - 23:18:46)
|