Why does an exact match on a name return a useless

2019-07-18 18:34发布

问题:

This doesn't make much sense to me, and I'm hoping someone can shed some light on what's going on here and how I work around it.

If I query like this:

https://api.foursquare.com/v2/venues/search?ll=37.77%2C-122.41&radius=15000&intent=browse&oauth_token=xxx&limit=20&query=pi%20ba

I get a list of about 15 items, including the item I'm searching for (pi bar). However, if I search for the exact match name:

https://api.foursquare.com/v2/venues/search?ll=37.77%2C-122.41&radius=15000&intent=browse&oauth_token=xxx&limit=20&query=pi%20bar

I just get back the blanket list of venues within this area (mostly BART stops, etc.)

Is it expected that I should have to shave the last character off of user entered queries to get results back, or is this just a messed up venue name that I've been debugging with?

回答1:

I'm not sure if this may help, but I've discovered placing an "and" between words in your query can produce more accurate results:

Searching for Chili's Bar & Grill

The first query has extraneous results:

https://api.foursquare.com/v2/venues/search?ll=34.07527923583984,-84.29469299316406&radius=5000&query=chili's bar grill&oauth_token=xxx&v=20111205

The second is much more accurate (although I've removed the ampersand: &)

https://api.foursquare.com/v2/venues/search?ll=34.07527923583984,-84.29469299316406&radius=5000&query=chili's and bar and grill&oauth_token=xxx&v=20111205



回答2:

There's a known issue with quality of bigram matches in foursquare venue searches -- your query term includes a very popular word ("bar") which skews the results. The search team is working on quality improvements for these sorts of queries.



标签: foursquare