我有一個基於Python的Google App Engine構建的網站。其中一項功能是可以使用Google靜態地圖更新您的當前位置。 Python代碼負責生成靜態地圖的URL,而HTML模板只是簡單地將其放在適當位置。這是在圖像應該看起來像的空間:谷歌靜態地圖鏡頭出現在第
<tr>
<td colspan="4"><img border=0 src="{{img_url}}" /></td>
</tr>
...然後在這裏是如何生成圖像的URL:
self.template_values['img_url'] = "http://maps.google.com/staticmap?center=%s,%s&zoom=%s&size=%s&markers=%s,%s,midreda" % (str(rs['lat']), str(rs['lng']), str(rs['zoom']), str(MAP_SIZE[0])+"x"+str(MAP_SIZE[1]), str(rs['lat']), str(rs['lng']))
的RS []字典是從響應谷歌地圖搜索。這會產生一個完全有效的靜態地圖網址:
<tr>
<td colspan="4"><img border=0 src="http://maps.google.com/staticmap?center=52.955115,-1.149172&zoom=11&size=512x512&markers=52.955115,-1.149172,midreda" /></td>
</tr>
以上圖片的URL是「英國諾丁漢」搜索後。如果您訪問的地址,您可以看到它按預期顯示,正確的大小和一切。但是,在頁面上(您可以通過spare-wheels.appspot.com/searchlocation查看,儘管您需要連接您的Facebook帳戶才能使用它),但該圖片並未顯示出來。 HTML源代碼看起來很好:沒有明顯的編碼問題或類似的東西。我看不出有什麼問題。有任何想法嗎?
感謝
本
編輯:個位的測試之後我發現,地圖有時工作,但大部分時間他們不這樣做,而當他們的工作,他們通常停止工作刷新後
圖像上的'border'屬性不再是有效的HTML,但是如果確實使用它,請將0值放在引號中。 – 2011-03-22 13:19:24
這可能是由於缺少API密鑰。如果沒有使用API,請求將受限於沒有API密鑰的全局共享有限配額請求。有了一個,您將獲得每天25,000個免費請求,並且您可以對您的網址進行簽名以啓用對額外配額的結算。在Python中,您可以使用https://github.com/allrod5/staticmaps-signature來包含您的API密鑰和/或對您的URL進行簽名。 – 2017-09-29 18:11:43