2010-04-01 98 views
7

我想在Google地圖網頁中提取一組約50-100個引腳的經度和緯度。我不控制網頁,我不需要多做一次,所以我正在尋找快速而骯髒的東西。我有FireBug以及Chrome的FireFox,我需要的是比重新輸入所有數字更容易的事情。如何在谷歌地圖中提取緯度/緯度?

+1

你爲什麼要竊取數據? – Jonathan 2010-04-01 04:05:57

+0

@Jonathan:你爲什麼認爲我會偷東西?從我所說的,它可能來自公共領域的數據集。 (事實上​​,我有充分的理由相信業主對我提取數據沒有問題,頁面是公開的。) – BCS 2010-04-01 06:29:55

+4

如果它是一個公共數據集,那麼爲什麼不能獲得它,而不是編寫腳本來存放數據從一個應用程序內?一個公開可用的頁面並不意味着它上面的數據是免費的... – Jonathan 2010-04-01 07:37:42

回答

2

只是保存.html文件,並使用正則表達式的作品:

這兩個正則表達式可能是很好的出發點:

@[0-9]+\.[0-9]+,-[0-9]+.[0-9]+",geocode:"",sxti:"[[email protected] .]+" 
{id:"[A-Zloc0-9]+",fid 
0

取決於地圖的類型和引腳是否設置通過經緯度或地址,它甚至可能只是獲得鏈接(點擊谷歌地圖頁面上的「鏈接」,瀏覽器中的URL可能不是山姆),然後查找「sll = [.. 。]「參數。

+0

好吧,現在我該如何提取鏈接?請記住,我不僅可以通過手工輕鬆完成。 – BCS 2010-09-06 04:16:17

+0

哪個鏈接?我以爲你想要經度/緯度。 – Dominik 2010-09-06 10:02:56

14

只需點擊鏈接快捷方式在地圖上中檢索的URL與引腳的地圖。

下一頁添加&output=kml到這個網址的結尾,並使用鏈接檢索包含KML文件所有的引腳數據。

這個kml文件實際上是xml格式,所以解析它應該很容易,你只需要尋找包含你需要的經度和緯度數據的<coordinates>元素。

的KML格式記錄在這裏:http://code.google.com/apis/kml/documentation/kmlreference.html

+0

一個簡單的正則表達式提取座標將是。* FixerMark 2010-09-12 09:04:56

+4

這不再適用。 現在訣竅是: https://www.google.com/maps/d/kml?mid={map_id} 例如: https://www.google.com/maps/d/kml ?中旬= 1lL6Ylpo7P3HnANcHTAzbH5hEx-E – brunetton 2016-06-08 12:20:09

0

谷歌已經改變了很多,你可以提取有關google.maps信息,並設置一些限制,像一天的查詢號碼的方式。

要提取Google地圖的緯度和經度,您需要了解HMTL代碼和操作JSON/XML文件的知識。 (所有這些都可以在許多教程中找到)

我建議您使用de Google Places API來提取數據,這非常容易!您可以免費提取大約150,000個位置,您必須獲得一個帳戶,激活你的特權API的地方(打開/關閉BUTTOM),讓你的密鑰,然後用一個簡單的網址,以獲取JSON/XML文件,這裏有兩個很大的聯繫。

[1] https://developers.google.com/places/documentation/search?hl=en

[2] https://developers.google.com/places/training/basic-place-search?hl=en

如果您需要關於座標的詳細信息,請轉到第二個鏈接中的「請求地點詳細信息」部分提供了有關網站的類型,電話號碼以及用戶所做的所有評論(如果可用)的信息。

偉大的編碼和問候!

相關問題