Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Googleapi | 488 | 12 | 11 | 12 days ago | 136 | September 27, 2022 | mit | C# | ||
C# .NET Core Google Api (Maps, Places, Roads, Search, Translate). Supports all endpoints and requests / responses. | ||||||||||
Hexo Theme Jsimple | 211 | a year ago | mit | CSS | ||||||
Simple three columns theme for Hexo.Inspired by JianShu.com | ||||||||||
Xgoogle | 210 | 4 years ago | 19 | Python | ||||||
Python library to Google services (google search, google sets, google translate, sponsored links) | ||||||||||
Public Autohotkey Scripts | 133 | 2 years ago | 9 | mit | AutoHotkey | |||||
For sharing some of my AutoHotKey example scripts | ||||||||||
Search Online | 115 | 3 years ago | 2 | TypeScript | ||||||
🔍A simple extension for VSCode to search online easily using search engine. | ||||||||||
Tampermonkey Script | 90 | a month ago | 3 | apache-2.0 | JavaScript | |||||
Tampermonkey 油猴子脚本 | ||||||||||
Giphy Python Client | 48 | 8 months ago | 2 | mpl-2.0 | Python | |||||
The GIPHY Core SDK is a wrapper around the GIPHY API | ||||||||||
Sdcv | 46 | 2 years ago | Emacs Lisp | |||||||
Emacs interface for sdcv (Stardict console version) | ||||||||||
Launchbaractions | 24 | 5 years ago | 1 | mit | JavaScript | |||||
Some useful actions for Launchbar | ||||||||||
Osint Browser Plugins | 22 | 6 years ago | ||||||||
OSINT Browser Plugins |
Seamless Google Api integrations.
Google Maps, Places, Roads, Search and Translate.
Feel free to contribute, throw questions and report issues. I usually respond fast (24-48 hours).
Do you need support for an additional .Net framework?, let me know.
New: Version 5.0.0 with Routes Api (directions and matrix), Ariel View Api and Address Validation Api.
The library may be consumed, either by using the individual facede implementations or by depdendency injecting the individual api's.
Each api implementation consists of a request and a response. The request has properties reflecting the parameters supported, and the response represents the object model for the returned json.
A few other noteworthy members.
var uri = request.GetUri(); // Gets the full request uri, including query parameters.
var params = request.GetQUeryStringParameters(); // Gets a list of all the added parameters.
response.RawJson // The raw json returned by Google.
response.RawQueryString // The querystring sent to Google when invoking the request.
Each api has a generic facade operation to execute the request and return the response.
The example below, simply populates a request, invokes the facade operation, and receives the response in return.
TRequest request = new TRequest();
TResponse response = await {Api}.[{SubGroup}].{Action}.QueryAsync<TRequest, TResponse>(request);
See below for a full list of supported Api's and actions.
If injecting the api's as dependencies is preffered register the services during startup, as shown below.
services
.AddGoogleApiClients();
Then, inject the individual Api's in constructors as needed
public class MyClass
{
private {Api}.[{SubGroup}].{Action} api;
public MyClass({Api}.[{SubGroup}].{Action} api)
{
this.api = api
}
}
See below for a full list of supported Api's and actions.
If a WebProxy
is required set the static property HttpClientFactory.Proxy
before registrering the GoogleApi dependencies or using the Facade.
The following api's are supported.
GoogleMaps.Directions
)GoogleMaps.DistanceMatrix
)GoogleMaps.Elevation
)GoogleMaps.Geocode.PlaceGeocode
)GoogleMaps.Geocode.AddressGeocode
)GoogleMaps.Geocode.LocationGeocode
)GoogleMaps.Geocode.PlusCodeGeocode
)GoogleMaps.Geolocation
)GoogleMaps.Roads.NearestRoads
)GoogleMaps.Roads.SnapToRoad
)GoogleMaps.Roads.SpeedLimits
)GoogleMaps.Routes.Directions
)GoogleMaps.Routes.Matrix
)GoogleMaps.AddressValidation
)GoogleMaps.AerialView.GetVideo
)GoogleMaps.AerialView.RenderVideo
)GooglePlaces.Search.FindSearch
)GooglePlaces.Search.NearBySearch
)GooglePlaces.Search.TextSearch
)GooglePlaces.Details
)GooglePlaces.Photos
)GooglePlaces.AutoComplete
)GooglePlaces.QueryAutoComplete
)GoogleSearch.WebSearch
)GoogleSearch.ImageSearch
)GoogleSearch.VideoSearch.Channels
)GoogleSearch.VideoSearch.Playlists
)GoogleSearch.VideoSearch.Vidoes
)GoogleTranslate.Detect
)GoogleTranslate.Languages
)GoogleTranslate.Translate
)Running the test suite is simple.
The test project stores settings related to your Google subscription (free or paid) in application.default.json
.
Most importantly, the ApiKey
, used to identify the Google subscription.
{
"ApiKey": "",
"SearchEngineId": "",
}
More information about generating a key can be found here: https://console.developers.google.com/