2

ご挨拶、

Google Earthからの単純なhttpリクエストを処理し、KMLを返送して、ローカルに保存されているマップタイルを表示するスクリプトを作成したいと思います。私はPythonを使いたいと思いますが、どの言語でも構いません。私はCGIで何もしたことがありませんが、これが私のタスクを達成するための最も簡単な方法だと思います。これは、Google KMLドキュメントが使用するものであり、GoogleEarthと通信するためのPythonCGIスクリプトです。 Pythonスクリプトをドロップして実行できるダウンロード可能な(そしてWindows 7で実行できる、またはどうしても必要な場合はLinuxを実行するVMを構築できる)CGIサーバーはありますか?

基本的に、Google Earthで画面を移動すると、サーバーにリクエストが送信され、画面に何を表示するかがGoogleEarthに通知されます。単純。

背景:Google Earthで自分の位置をリアルタイムで更新する、USB GPS受信機を使用して、横にあるラップトップで多くの運転を行っています。しかし、私はオフラインなので、Googleマップから地図タイルを動的にダウンロードして、通りの名前などを表示することはできません。マップタイルをダウンロードして、ドライブする都市をカバーする1つの大きなPNGとしてパッチを適用し、それらの画像をGoogle Earthにオーバーレイとしてインポートしていますが、ローカルで実行されるサーバーを構築したいと思います。マシンに保存されているマップタイルのデータベースに追加し、KM​​Lを提供して、旅行をするたびに事前にすべての作業を行う代わりに、それらのタイルをオーバーレイとして表示します。

4

2 に答える 2

1

もし私があなたなら、MapServerTilecacheを使用してそれを正確に実行します(http / python mapscriptバインディングを介して地理参照されたラスターイメージを提供します)。

プレーンなcgiが必要な場合は、おそらくlighttpdまたはnxginxなどを使用できます。

また、グーグルマップタイルをこすることはそれらの利用規約を侵害している可能性が非常に高いことに注意してください。

于 2009-12-11T01:00:41.730 に答える
1

標準ライブラリのCGIHTTPServer 。

# current directory containing cgi-bin directory with scripts in
# subclass CGIHTTPRequestHandler and override cgi_directories to change this
#
os.chdir('/path/to/htdocs')

BaseHTTPServer.HTTPServer(('',80), CGIHTTPServer.CGIHTTPRequestHandler).serve_forever()

それは速くはなく、かなり制限されており(たとえば、200 OK応答以外は何も返すことができません)、おそらく完全に安全ではありませんが、この種のローカルジョブには問題ありません。

于 2009-12-11T01:03:08.497 に答える