有很多方法可以與來自服務器(Python)的客戶端代碼進行交互。你可以在客戶端設置一個cookie,從Javascript發送一個AJAX請求到服務器,提交一個表單,或者像WebSockets這樣更具異國情調的路線。沒有更多的信息,我不確定我們可以告訴你哪個是最好的。
您使用的是什麼web框架?
編輯:
哦,我見式您使用的是編寫腳本的Web視圖...也許像zoom = view.evaluateJavaScript('map.getZoom();')
?從我可以看到的圖書館來看,困難的部分可能是獲取對JS中的map var的引用。
編輯:
我不認爲這是可能的,而無需修改或擴展pymaps,因爲它在本地範圍限定在GMAP JS和任何地方都不會揭露它。我在gist中完成了這項工作。然後,您可以使用類似於上述內容的方式訪問縮放,例如zoom = view.evaluateJavaScript("PyMaps[0].gmap.getZoom();")
。
編輯:
如果這不是clear-我列入要點要求您使用MyPyMap
而不是PyMap
。
從另一個StackOverflow question,我意識到你不能做evaluteJavaScript
直上一個視圖。隨後的代碼看起來更像這樣
doc = view.page().mainFrame().documentElement()
zoom_level = doc.evaluateJavaScript("PyMaps[0].gmap.getZoom();")
這不是一個web應用程序。這是一個python桌面應用程序。我只使用QWebView顯示谷歌地圖,因爲它們只支持javascript,這就是我知道如何顯示在Python窗口網頁的唯一途徑。 – LiverpoolFTW
對不起!剛剛抓住它。 –
@LiverpoolFTW讓我知道,如果最後編輯幫助! –