خادم CGI LiteWeight لاستخدامه على الجهاز المحلي لخدمة KML إلى Google Earth عبر Python أو ما شابه؟

StackOverflow https://stackoverflow.com/questions/1885113

  •  19-09-2019
  •  | 
  •  

سؤال

تحية طيبة،

أريد أن أكتب برنامج نصي يعالج طلبات HTTP البسيطة من Google Earth وترسل KML لعرض بلاط الخريطة المخزنة محليا. أود استخدام بيثون ولكن أي لغة على ما يرام. لم أفعل أي شيء من أي وقت مضى مع CGI، لكنني أعتقد أن هذه هي أبسط طريقة لإنجاز مهمتي. هذا هو ما يستخدمه Docs Google KML، هو البرامج النصية Python CGI للتحدث مع Google Earth. هل يوجد خادم CGI الذي يمكنني تنزيله (وتشغيله على نظام التشغيل Windows 7، أو إذا كان ضروريا للغاية، فيمكنني إنشاء نظام التشغيل Linux VM) الذي يمكنني فقط إسقاط نصي Python الخاص بي وتذهب إليه؟

في الأساس، أثناء التنقل حول الشاشة في Google Earth، سترسل طلب إلى الخادم الخاص بي، مما سيخبر Google Earth ما الذي يجب إظهاره على الشاشة. بسيط.

خلفية: أقوم بالكثير من القيادة مع جهاز الكمبيوتر المحمول الخاص بي بجانبني، مع جهاز استقبال USB GPS الذي يقوم بتحديث موقعي في الوقت الفعلي على Google Earth. ولكن، نظرا لأنني غير متصل بالإنترنت، لا أستطيع تنزيل بلاط الخريطة ديناميكيا من خرائط Google حتى أتمكن من رؤية أسماء الشوارع ومثلها. لقد تم تنزيل بلاط الخريطة وتصحيحها معا كواحد من طراز PNG كبير لتغطية المدينة التي سأقود فيها، ثم استيراد هذه الصور كتراكب في Google Earth، ولكن أود إنشاء خادم يعمل محليا، الصنابير في قاعدة بيانات من بلاط الخريطة المخزنة على الجهاز، ويقدم kml لعرض تلك البلاط كتراكب بدلا من القيام بكل ما يعمل في وقت مبكر في كل مرة أقدم فيها رحلة.

هل كانت مفيدة؟

المحلول

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 الردود، لأحد) وربما ليس آمنا تماما، ولكن لهذا النوع من الوظيفة المحلية فلا بأس.

نصائح أخرى

إذا كنت أنت كنت أستخدم mapserver. و tilecache. للقيام بذلك بالضبط (خدمة الصور النقطية الجغرافية الجغرافية عبر الارتباطات المتشعب / Python Mapscript المتاحة).

إذا كنت تريد CGI عادي، فمن المحتمل أن تستخدم LighthTTPD أو Nxginx أو ما شابه ذلك.

لاحظ أيضا أن تجريف بلاط خرائط Google من المحتمل جدا أن ينتهك شروط الاستخدام الخاصة به.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top