我只想从 Flickr 获取风景照片,但我没有看到任何允许我这样做的参数。有谁知道有没有办法?

最佳答案

flickr.photos.search 功能的响应中,您可以指定许多可选参数,称为 extras 。对于您指定的每个 URL(格式为 url_s,url_q ...),您将获得以下信息。

示例 JSON 响应

{
    ...
    "photos": {
        "page": 1,
        "pages": "478",
        "perpage": 2,
        "total": "4775",
        "photo": [
            {
                ...
                "longitude": 0, "accuracy": 0, "context": 0, "media": "photo",
                "media_status": "ready",
                "url_q": "https:\/\/farm4.staticflickr.com\/0000\/000_000_q.jpg",
                "height_q": "150",
                "width_q": "150",
                ...
            },
            {
                ...
                "longitude": 0, "accuracy": 0, "context": 0, "media": "photo",
                "media_status": "ready",
                "url_q": "https:\/\/farm4.staticflickr.com\/0000\/000_111_q.jpg",
                "height_q": "150",
                "width_q": "150",
                ...
            },
        ] },
        "stat": "ok"
};

如果您想要 Q 尺寸照片的 URL,您将拥有 height_qwidth_q 属性。如果 width_q 大于 height_q,则方向为 景观 。如果它是相反的照片方向是 肖像 ,否则它是一个完美的正方形。

在 Javascript 中,您可以编写这样的函数:
function determinePhotoOrientation(width, height) {
    if (width > height) {
        return 'landscape';
    } else if (width < height) {
        return 'portrait';
    }
    return 'square';
}

如果您使用不同的语言,您可以在该语言中使用类似的功能来帮助您确定方向。

关于API:按方向获取 Flickr 照片,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25549206/

10-15 13:40