如何从Picasa API获取相册网址?

时间:2009-11-19 01:20:32

标签: python picasa

我真的不喜欢Picasa面向Feed的API。为什么他们不能创建REST接口?

有谁知道如何获取特定相册的网址?例如,说我有:

gd_client = gdata.photos.service.PhotosService()
albums = gd_client.GetUserFeed(user="user@gmail.com")
album = albums.entry[0]

如何找到其网址?我正在寻找类似的东西:

http://picasaweb.google.com/username/AlbumTitle

因此,当我点击它时,我会转到Picasa查看该相册!

PS:请注意,您不能只将album.title放在那里,因为它可能包含空格,而且它实际上并不相同。

3 个答案:

答案 0 :(得分:6)

您可以通过在条目上调用.GetHtmlLink().href来访问相册的picasa网络网址

album_urls = [album.GetHtmlLink().href for album in albums.entry]

答案 1 :(得分:0)

这是一个使用PHP的例子

function grey_picasa_stream($nr=9 ) {
    $feed = "https://picasaweb.google.com/data/feed/base/user/103900444418818987225/albumid/5702133232086465745";
    $return = "";
    $xml = simplexml_load_file($feed)
                or die ("Unable to load XML file");

    $i = 0;
    foreach( $xml->entry as $row ) {
        if( $i<$nr ) {
            $src = $row->content['src'];
            $link = $src;
        foreach($row->link as $rLink ){
        if($rLink['rel'] == 'alternate'){
                $link = $rLink['href'];
            break;
        }
        }
            $return .= "<a href='{$link}' title='{$row->title}'><img src='{$src}' alt='{$row->title}' /></a>\n";
        } else break;

        $i++;
    }
    return $return;
}

http://www.jaider.net/396-rss-feed-from-picasa-album/

答案 2 :(得分:-1)

转到http://picasaweb.google.com/[username]/[album title]

获取相册网址