How to get place description using Google API or any other API? - google-places-api

I am using Google API to get the place information and store it into database. Using Google API I am able to get address, opening hours, rating and reviews as shown in below image.
But, I am not able to get place description which is highlighted in below image in red circle. ("Quaint Italian mainstay for deep-dish, Chicago-style pizza, calzones, pastas & hot dogs.")
I want that information in my application. I think google is taking those information from
Freebase https://developers.google.com/freebase/guide/basic_concepts
Wikipedia https://www.mediawiki.org/wiki/How_to_contribute
But I am not sure.
Can any one help me suggest me that how I can get that information or any other API that I can use to get that information based on google place_id.
Any help would be highly appreciated.
Thank you

Accordingly to the documentation and #xomena, currently you cannot obtain this data via Places API. There is a feature request in Google issue tracker to make the detailed business type available in Places API, however Google doesn't expose any ETA (estimation time of arrival:
https://issuetracker.google.com/issues/35822953
Feel free to star this feature request to express your interest and subscribe to notification from Google.

To my knowledge it is not possible to get this information from the Google Places API. The API documentation does not display the venue description. Try to have a look here: https://developers.google.com/places/web-service/details (it might be that Google does not share all information from their platform with other developers..).
I would suggest you to do one of the following (or perhaps both):
Scrape Google the old school way; i.e. by getting the information from the HTML. There is a quite decent guide for doing that here (you would of course have to adjust the example to scraping Google instead): https://medium.freecodecamp.org/how-to-scrape-websites-with-python-and-beautifulsoup-5946935d93fe.
What I would recommend and which probably is the fastest: enrich your current data with other data. You could e.g. use Foursquare and search for the places you get from Google. It should be possible to get the description for each place on Foursquare. See here: https://developer.foursquare.com/docs/api/venues/details. If you have problems with matching the places after your query has returned, because the venue names are not exactly the same - but close, then you could use an algorithm to match strings that are close; perhaps using the levenstein distance (https://en.wikipedia.org/wiki/Levenshtein_distance).

Related

Is it possible to dynamically query Google APIs to see how much of the limit/quota you've used?

For a given Google API, is there any way to dynamically check usage against any of the current limits for that API?
For example, this page https://developers.google.com/classroom/limits?hl=en shows that I can query the Classrooms API 4,000,000 times per client per day. At midday, without going to the API Console, how could I know that I've already hit 3 million queries?
I'm hoping that there's a billing or usage API that covers this, but can't see it.
Note: I'm not having any issue right now with a specific call, just anticipating that my usage will scale up significantly in the next few months, so am looking for a solution for monitoring rather than advice on not hitting the limits at all. My specific use-case is for Google Classrooms, but reading wider around this I can't see a general solution either.
Answer:
No, dynamically you can't retrieve this information.
Feature Request:
You can however let Google know that this is a feature that is important for the Google Workspace APIs to have, and that you would like to request they implement it.
The page to file a Feature Request for the Google Classroom API is here, as there is no specific component for Google Workspace APIs in general I would suggest filing it here instead.
You can use Google's Cloud Monitoring API to achieve this. This is the documentation page for APIs-
https://cloud.google.com/monitoring/api/v3
This is the documentation page for concerned metrics-
https://cloud.google.com/monitoring/api/metrics_gcp#serviceruntime/quota/allocation/usage
https://cloud.google.com/monitoring/api/metrics_gcp#serviceruntime/quota/exceeded
https://cloud.google.com/monitoring/api/metrics_gcp#serviceruntime/quota/limit

Google Place API, advanced place details: amenities, crowd, accessibility

I'm successfully using Google Places API to get details like name, address, phone, lat/lng, opening hours, etc. No problem with that.
However, the data I can't get a hold of is the deeper data.
For example, if you open up a McDonald's, and click on its short description, it will show things like Amenities, Crowd, Atmosphere, Accessibility.
Question is - is it possible to access this information via Places API?
Thanks
According to the documentation. That information is not returned by the API. You can link directly to that place on Google Maps to show your users that information though.
Remember that APIs like this usually don't return all of the information available to the native service so that the native service (in this case Google Places) retains a competitive advantage.

Google+ API to get insights data of Google+ pages

For a project, I need to get following information from a Google+ brand page
count reviews
get rating
get reviews
get reviews time stamps
contact information
I have tried finding some API on developers.google.com but failed to get such API. Is there any other way around to get this data? It sounds like a dumb question, but unfortunately I stuck and getting no help from anywhere, that's why I am writing here.
Thanks
Saurabh
You can download a bunch of libraries here that make using these api's pretty simple.
https://developers.google.com/+/downloads/
Look around the pages they also have plenty of example.
https://developers.google.com/+/web/
https://developers.google.com/+/web/api/javascript

Yahoo, Google, Yelp API

Is there any php API to gather information about a business(address, reviews) by its phone number from Yelp, Google, Insiderpages, Yahoo..
Please help, i have done research about these, but did't get the right info, though yelp is providing info by it's phone number but there they ask ywsid as mendatory (http://api.yelp.com/phone_search?phone=1234567890&ywsid=XXXXXXXXXXXXXXXX) but i want by phone number only.
Please note that all APIs have terms, most of them won't allow you to store their data in your own database and most of them have display requirements, before proceeding with any developing please read carefully their display requirements and terms.
Depending on your project you might not be allowed to use the data as you might need/want to on your project.
The other alternative would be scrapping sites, but most sites have rules against scraping too...
And again read a lot before putting too effort on something you are prohibited to in first place.
Yelp
ywsid = API key, you need to get your own key if you are using the yelp API, get it here
if you are using it to add it to your own database or storing the information anywhere it is against their policies display requirements & api terms.
if you are using any API you must read their terms before even thinking of doing anything.
Google Places
API
Insiderpages
I Don't think they have one but you could use the citygrid API that does a [lot of sites] search at once.
Yahoo
Yahoo API
CityGrid
As mentioned before citygrid API
Foursquare
Foursquare API
Merchant Circle
Merchant Circle API
White Pages
White Pages API
Yellow Pages
Yellow Pages API
Bottom line is, all these companies have put a lot of time and effort and money to build their databases, and they want you to redirect people back to their pages so they can make their money back/profit.

Google Places API - Submitting reviews

I am researching whether the following is possible and if so how I could go about achieving it.
We collect reviews for businesses from their customers and we’d like to post these reviews to Google places as part of the reviews they have on their.
I was wondering how I would go about getting our website to “push” this data to the Google places website, I’ve done lots of searching on the APIs but have found nothing that says it’s possible or not.
Currently the Google Places API does not have write capability. It only has read capability. Right now only ratings are available, but I suspect reviews might come someday too.
Although you can send check-in signals and fix Places through the API. Hopefully Google will add the ability to send reviews and receive them.
If you're looking to get your content added to Google, you may want to talk to their content partnerships teams http://www.google.com/support/mapcontentpartners/
Since Google's local and maps initiatives are under the same people that would be the place to go.
I too looked into this as it would be of huge value to companies if possible.
My research led me to believe that it is not possible and could possibly violate Google's TOA with negative results for the company's Places page.
Instead, I built a workaround that makes it really easy for companies to collect feedback and get their own customers to submit the reviews: http://dallasmarketingservices.com/survey-local-unveiled-how-online-reviews-affect-your-local-business/
Maybe we will see this in the future though.

Resources