Ruby - Songkick api - 在 events.location() 查询方面需要帮助 [关闭]

Posted

技术标签:

【中文标题】Ruby - Songkick api - 在 events.location() 查询方面需要帮助 [关闭]【英文标题】:Ruby - Songkick api - Need help with events.location() query [closed] 【发布时间】:2011-05-08 00:50:47 【问题描述】:

我正在使用this Songkick 包装器,它适用于获取艺术家的抓取事件,如下所示:

sk.events(:artist_name => "Balimurphy")

但我无法按位置抓取事件。 Songkick 期望查询看起来像这样

location=geo:lat,lng

我找不到正确的语法来传递 lng=-73.5833, lat=45.5。以下是我尝试过的一些变体:

sk.events(:location => :geo=>:lng=>"-73.5833", :lat=>"45.5")
sk.events(:location => :geo=>lng=-73.5833, lat=45.5)
sk.events(:location => "geo=-73.5833,45.5")

有什么想法吗?

我在哪里可以找到可能涵盖此内容的文档?

【问题讨论】:

【参考方案1】:

我一直在查看以下 3 个来源:

https://github.com/jrmehle/songkickr http://rubydoc.info/gems/songkickr/0.1.0/frames http://www.songkick.com/developer/event-search

我认为您需要将上次尝试更改为

sk.events(:location => "geo:-73.5833,45.5")     # geo:

songkick 页面上的一个示例是 location=ip:94.228.36.39。这让我觉得它是为了定位,它想要location=type:data

我假设您传递的哈希值变成了key=value(只需查看 Songkick 页面和您的工作示例)。

因此,您希望您的值是“geo:-73.5833,45.5”,而您的键是“位置”。

我希望这对你有用!

【讨论】:

(披露:我在 Songkick 工作。)这确实是正确的! groups.google.com/group/songkick-api 有一个邮件列表,如果您有任何问题或改进建议,我们中的一些人正在收听。 不幸的是,我也已经尝试过了,但它不适合我。 可能是包装器的问题。我已经求助于使用 :location => "ip:x.x.x.x" 作为临时解决方法,同时我在 Ruby 的黑暗艺术中教育自己。谢谢! @spectro 我希望你能成功!似乎使用ip:x.x.x.x 方法可能更有效,至少从他们的网站来看是这样。 @nfelger 感谢您的帮助!

以上是关于Ruby - Songkick api - 在 events.location() 查询方面需要帮助 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

ruby 2.1.2中的“#$e”是啥意思

部署 ruby​​ api 谷歌云

Ruby制作E-mail小爬虫

使用ruby在数组中过滤频繁项

如何在 Ruby 中使用 Win32API 从 DLL 返回字符串

编码 64、Ruby 和 Mandrill API