2013-05-13 29 views
5

Trong Google Địa điểm, khi chỉnh sửa doanh nghiệp của tôi, tôi có thể thêm "mô tả" trong "Thông tin cơ bản". Nhân tiện, để thực hiện chỉnh sửa đó, hãy truy cập http://www.google.com/local/add/businessCenter và nhấp vào "Chỉnh sửa" trong danh sách doanh nghiệp.Cách nhận mô tả "doanh nghiệp" thông qua API Google Địa điểm?

Khi tôi truy vấn các API Địa điểm để biết chi tiết về doanh nghiệp của tôi, tôi không thấy điều này "description":

url = "https://maps.googleapis.com/maps/api/place/details/json?key=#{key}&sensor=#{sensor}&reference=#{reference}" 

Tôi nhìn Place Details Results, và cũng không thấy một lĩnh vực "mô tả" có .

Vậy làm cách nào tôi có thể lấy trường Mô tả địa điểm/doanh nghiệp thông qua truy vấn Google API?

+0

Có ai từng nghĩ ra điều này không? – rebelliard

+0

Tôi chưa có. Nếu bạn tìm ra, hãy viết câu trả lời. – user664833

Trả lời

-1

Câu hỏi hỏi "cách tải mô tả" nhưng người dùng tiếp tục mô tả vấn đề của họ trong việc chỉnh sửa doanh nghiệp của riêng họ.

Dường như Google không lưu trữ thiệu Place trong Google riêng của nó Places DB nhưng thay vì đưa ra những đoạn trích từ các trang Freebase/Wikipedia liên quan

Câu trả lời cho chỉnh sửa mô tả doanh nghiệp của bạn "bạn có thể không trực tiếp" hay " tạo hoặc chỉnh sửa trang Wikipedia/Freebase của bạn để gián tiếp thêm/sửa đổi mô tả "

Tiếp tục đọc câu trả lời về cách" nhận "mô tả doanh nghiệp bằng địa điểm api. Ví dụ này sử dụng PHP.

Nhiều bài viết trên Wikipedia không chỉ ra đồng/lng/lat để bạn không thể thực hiện tìm kiếm gần/tên bằng APi của Wikipedia.

Tuy nhiên FreeBase nhận hầu hết thông tin từ Wikipedia và thông thường CÓ thông tin lat/lng.

//Gather info from Google Places API 
//$_GET['gID'] is the Reference for the Place you want info for. 
$url = "https://maps.googleapis.com/maps/api/place/details/json?" 
     ."reference=".$_GET['gID'] 
     ."&sensor=false" 
     ."&key=YOUR KEY"; 

$results = ProcessCurl ($url); 
$gPlace = json_decode($results); 

//Gather info from FreeBase 
$url = "https://www.googleapis.com/freebase/v1/search?" 
     ."indent=true" 
     ."&filter=%28all" 
     ."+type%3Alocation" 
     ."+name%3A%22". urlencode($gPlace->result->name) ."%22" 
     ."%28within+radius%3A100ft" 
     ."+lon%3A". $gPlace->result->geometry->location->lng 
     ."+lat%3A". $gPlace->result->geometry->location->lat ."%29%29" 
     ."&output=%28description%29";   
$results = ProcessCurl ($url); 
$FreeBase = json_decode($results); 

//ensure we got results from FreeBase 
//All we want from FreeBase is the Description 
if ($FreeBase->status == "200 OK" && $FreeBase->hits > 0) { 
$member = "/common/topic/description"; 
$Description = $FreeBase->result[0]->output->description->$member; 
print_r ($Description[0]); 

Ví dụ này sử dụng tên, và LAT/LNG của Google Place và tìm kiếm loại các 'Địa điểm' của Freebase DB cho rằng Tên trong vòng 100ft của nó Lat/LNG.

Tôi chắc chắn rằng mã có thể được thực hiện tốt hơn nhưng nó hoạt động khá tốt cho đến nay.

CSONG - một điều cần lưu ý - Khi bạn thực hiện tìm kiếm trên Google cho 'Địa điểm', các tìm kiếm của Google FreeBase FIRST sau đó khớp với kết quả đó với kết quả tương tự trên Google Địa điểm. Đây là lý do tại sao khi bạn tìm kiếm địa điểm trên google, kết quả bên phải có thể được đặt tên khác với kết quả của Google Địa điểm và có mô tả, tuy nhiên nếu bạn sử dụng 'gần', bạn sẽ thấy rằng cùng một địa điểm hiện không có mô tả .

Ví dụ - Tôi đang ở London Ontario Canada và tôi có thể tìm kiếm 'Trường cao đẳng Fanshawe' và kết quả là 'Trường cao đẳng Fanshawe' bao gồm mô tả .. tuy nhiên trên Map applet con trỏ đang ở Google Place gọi là 'Fanshawe College - London Campus 'Nếu tôi thay vào đó tìm kiếm' trường cao đẳng fanshawe gần London ', quy định rằng tôi đang tìm kiếm một Địa điểm; Kết quả tôi nhận được nó 'Fanshawe College - London Campus' không có mô tả và ít thông tin hơn.

Các vấn đề liên quan