أكثر

خطأ في تحليل XML: خطأ في طلب WFS مع Openlayers؟

خطأ في تحليل XML: خطأ في طلب WFS مع Openlayers؟


لقد كتبت نصًا باستخدام مكتبة OpenLayers للحصول على بعض الطبقات من Geoserver وعرضها على الخريطة. أنا أستخدم كل من طبقات WMS و WFS. كل شيء سار بشكل جيد في مضيفي المحلي (MAMP) في نظام التشغيل windows. الآن يجب علي الترحيل في نظام UBUNTU 12.10. على الرغم من أنني أحصل على WMS بشكل صحيح ، إلا أنه لا يمكنني الحصول على WFS.

لقد استخدمت Firebug وهذا هو طلب POST:

     21.831815896484 37.948519811767 22.346800027344 38.120181188719

وهذا هو رد POST (وهو في الواقع محتوى ملف cgi الخاص بي:

#! / usr / bin / env python "" "هذا وكيل أعمى نستخدمه للالتفاف حول قيود المتصفح التي تمنع Javascript من تحميل صفحات ليست على نفس الخادم مثل Javascript. وهذا له عدة مشاكل: إنه أقل كفاءة ، قد يؤدي إلى كسر بعض المواقع ، وهو خطر أمني لأنه يمكن للأشخاص استخدام هذا الوكيل لتصفح الويب و p

في علامة XML الخاصة بـ firegu حصلت على هذا الخطأ:

خطأ في تحليل XML: غير منسق جيدًا الموقع: moz-nullprincipal: {79ed7c81-0daf-4525-a315-808f0894befd} رقم السطر 1 ، العمود 2: #! / usr / bin / env python

هل لديك أي فكرة عما يحدث هنا؟ هل المسار: #! / usr / bin / env python تم ضبطه بشكل خاطئ؟ أو ماذا يمكن أن تكون المشكلة؟

وهذا هو طلب WFS الخاص بي:

wfs_layer_komvoi = new OpenLayers.Layer.Vector ("Κόμβοι" ، {الاستراتيجيات: [new OpenLayers.Strategy.BBOX ()] ، البروتوكول: new OpenLayers.Protocol.WFS ({version: "1.1.0" ، url: "http: // localhost: 8080 / geoserver / wfs "، featurePrefix:" ريفي "، // مساحة عمل من geoserver featureType:" komvoi_real "، // اسم الطبقة من geoserver featureNS:" http://www.opengeospatial.net/rural "، // مساحة الاسم من أنماط الخادم الجغرافي: "النقطة"})})

هناك سببان أو ثلاثة أسباب محتملة تتبادر إلى ذهني:

الخيار 1: لم يتم تكوين خادم الويب الخاص بك بشكل صحيح:

ماذا يحدث على سبيل المثال إذا حاولت الوصول إلى هذا الموقع (بافتراض أنك وضعت proxy.cgi في مجلد usr / lib / cgi-bin -folder):

http: //yourserver_ip_or_adress/cgi-bin/proxy.cgi؟ url = http: //www.openstreetmap.org

إذا لم تشاهد موقع الويب openstreetmap (بدون تصميم مناسب) ، فيجب أن تلقي نظرة على إعدادات apache.

ستجد هنا بقية المقال: https://httpd.apache.org/docs/2.4/howto/cgi.html#configuring

سيكون أحد الخيارات هو تعديل مضيفاتك الافتراضية بتنسيق

/ etc / apache2 / sites-enabled / default أو / etc / apache2 / sites-available / default

حيث يمكنك إضافة بعض المعلومات التي يجب تنفيذ cgi: إليك مثال بسيط كيف يمكن أن يبدو تعريف مضيف ظاهري واحد:

 اسم الخادم اسم الخادم الخاص بك ServerAlias ​​اسم الخادم الخاص بك DocumentRoot / var / www / xyz / ScriptAlias ​​/ cgi-bin / usr / lib / cgi-bin /  AllowOverride بلا خيارات + ExecCGI SetHandler cgi-script Order تسمح ، رفض السماح من الكل 

--

الخيار 2 / الخيار 3: مشكلات التشفير أو cgi غير قابل للتنفيذ:

جرب proxy.cgi- "الإعداد":

  • قم بتنزيل proxy.cgi مباشرة في نظام التشغيل Linux الخاص بك:

wget https://raw.githubusercontent.com/openlayers/openlayers/master/examples/proxy.cgi

  • أضف موقعك إلى المضيفات المسموح بها (على سبيل المثال باستخدام محرر nano)

nano proxy.cgi

  • ضعه في مجلد cgi-bin الخاص بك (على سبيل المثال / usr / lib / cgi-bin)

تأكد من أنه قابل للتنفيذ (على سبيل المثال chmod a + rx /usr/lib/cgi-bin/proxy.cgi)

  • اضبط OpenLayers.ProxyHost:

OpenLayers.ProxyHost = "/cgi-bin/proxy.cgi؟url="؛

  • وجربها

فشل Windows في تثبيت التحديث التالي بسبب الخطأ 0x800f0900

لا يمكن تحديث وحدة تحكم مجال WIN 2012 VM الأساسية الخاصة بي بعد الآن ، يفشل كل تحديث مع هذا الخطأ:

  • إعادة تعيين دليل SoftwareDistribution
  • ينتهي sfc / scannow بدون أخطاء
  • تفكيك / عبر الإنترنت / تنظيف الصورة / استعادة الصحة توقف بنسبة 40 ٪ (أنتظر 18 ساعة ، ثم أوقفتها)
  • تفكيك / عبر الإنترنت / تنظيف الصورة / المصدر. / resthealth الحصول من مصدر DVD توقف عند 40٪ مثل السابق
  • تمهيد نظيف وآمن قبل الأوامر السابقة

**** تحرير محتوى WindowsUpdate.log:


إضافة WCS GetCapabilities تحليل WCS 1.0.0 و 1.1.0 # 814

يضيف طلب السحب هذا دعمًا لتحليل WCS GetCapabiliites لـ WCS 1.0.0 و 1.1.0. بينما أدرك أن العمل مع بيانات WCS على تطبيق قائم على الويب هو مهمة خادعة ، فإن الحصول على معلومات حول الخدمات والبيانات المتاحة يمكن أن يكون مفيدًا للغاية.

يتضمن هذا الرمز اختبارات الوحدة لجميع الوظائف المضافة التي تم اجتيازها جميع الاختبارات ذات الصلة.

أحد التغييرات الصغيرة الأخرى المضمنة هنا هو أنني قمت بنقل الخطأ Porperty من الفئة الأساسية (WCSCapabilities) إلى المحللون ، وكان هذا تغييرًا ضروريًا لأنه لا توجد خصائص مشتركة بين WCS 1.0.0 و 1.1.0. على أي حال ، يبدو هذا التغيير منطقيًا ، نظرًا لأن المحللين لديهم معلومات أكثر حول ما يشكل تحليلًا ناجحًا مقارنة بالفئات الأساسية. من أجل الاتساق ، قمت أيضًا بتغيير فئة WFSCapabilities لتتوافق مع هذا التغيير. لم أتمكن من العثور على أي فئات أخرى تستخدم errorProperty. لقد ناقشت هذا التغيير سابقًا مع بارت ، والحل يختلف قليلاً عما اقترحه. أعتقد أن هذا الرمز أنظف وأوضح ، لكنني منفتح على الآراء المختلفة.


في حالتي ، كان الحل هو استبدال محرك الأقراص المعيّن بالمسار المؤهل بالكامل. لذا بدلاً من:

XCOPY C: DATA Z: (حيث Z هو محرك الأقراص المعيّن إلى SERVER DATA $)

أقوم بتشغيل المهمة كمسؤول وعملت مثل السحر.

إذا كنت تحاول نسخ هذه المجلدات إلى مشاركة عبر شبكة ، فلن تعمل لأن المهمة المجدولة يتم تشغيلها كـ "النظام". إذا كانت هذه هي الحالة ، يجب عليك تحديد المستخدم الذي ستكون المهمة "تشغيل باسم".

تمكنت من التغلب على هذا باستخدام مجموعة من الأداة المساعدة Robocopy (لتسجيلها الأكثر قوة ومعالجة الأخطاء) وأمر NET USE.

يقوم هذا البرنامج النصي بتعيين الموقع البعيد إلى محرك أقراص الشبكة B: باستخدام اسم المستخدم وكلمة المرور المحددين للجهاز البعيد.

يقوم Robocopy بعد ذلك بنسخ محتويات المجلد الموجود على موقع الشبكة إلى المجلد D: backups. سيؤدي هذا أيضًا إلى تسجيل التفاصيل إلى ملف سجل robocopy المحدد حتى تتمكن من معرفة عدد الملفات التي تم نسخها وما إلى ذلك.


إعادة صياغة طبقة جوجل رقم 484

يجب علينا إعادة صياغة طبقة Google لتجنب خلط دوم. راجع http://code.google.com/p/google-maps-utility-library-v3/source/browse/trunk/googleearth/src/googleearth.js#819 للحصول على مثال لإضافة عنصر حظر حدث كخريطة جزء.

أهوسيفار تم التعليق عليه في 20 يوليو 2012

شكرا لهذا الرابطtschaub. التغيير في طلب السحب المرفق واضح ومباشر ويسمح لنا بالتخلص من الكثير من التعليمات البرمجية الغريبة.

البروبينات تم التعليق عليه في 28 يوليو 2012

هذا مناسب جدًا ، حيث يبدو أن Google قد غيرت mapObject مرة أخرى ، ولم يعد التصحيح / الكود الغريب السابق يعمل. راجع http://openlayers.org/dev/examples/google-v3.html حيث تحصل على خطأ "لا يمكن قراءة خاصية" نمط "غير محدد". للوهلة الأولى ، يبدو أنهم قدموا مستوى إضافيًا من الأطفال.

سأحاول وأجد الوقت لاختبار الكود الجديد الخاص بك ، ولكن بافتراض أنه يعمل مع الأمثلة / أحدث واجهة برمجة تطبيقات Google ، فيجب دمج IMO. أعتقد أنه يجب أن يكون هناك وصف في ملاحظات الإصدار أيضًا.

البروبينات تم التعليق عليه في 28 يوليو 2012

لسوء الحظ ، يبدو أن تحديد الإصدار لا يحدث فرقًا.

لذلك ، قمت الآن بفحص فرعك ويبدو جيدًا. لقد قمت بتثبيته على خادم الإنتاج الخاص بي - تحقق مما إذا كان أي شخص يبلغ عن أي مشكلات. :-) لم يتم تحديد ما يفعله الكود الجديد بعد ، ولكن الشيء المهم هو أنه يبدو أنه يعمل.

شكرًا Google - لم يكن لدي شيء أفضل لأفعله في عطلة نهاية الأسبوع الصيفية & lt / sarcasm & gt

@@ -6,7 +6,6 @@
& lt meta name = & quot؛ تطبيقات الويب للجوّال من apple & quot؛ المحتوى القادر على & quot؛ & quot؛ نعم & quot & GT
& lt title & gt OpenLayers Google (v3) Layer Example & lt / title & gt
& lt link rel = & quot stylesheet & quot href = & quot ../theme/default/style.css & quot type = & quot text / css & quot & gt
& lt link rel = & quot stylesheet & quot href = & quot ../theme/default/google.css & quot type = & quot text / css & quot & gt

بارتفدي 6 ديسمبر 2012

هل يمكنك توضيح سبب استمرار تضمين google.css في بعض أمثلة Google ، ولكن تمت إزالته من هذا المثال؟

أهوسيفار 6 ديسمبر 2012

ببساطة لأنني لم ألقي نظرة على الأمثلة الأخرى. ويجب إزالته فقط من الأمثلة التي تستخدم الإصدار 3 من واجهة برمجة التطبيقات.

بارتفدي 6 ديسمبر 2012

أكدت من خلال الاختبارات / manual / google-v3-resize.html أن هذا لم يعد مطلوبًا بعد الآن.

بارتفدي علق في 6 ديسمبر 2012

عند التحميل الأول للأمثلة / google-v3.html ، يمكن النقر فوق خطأ مخطط التقرير. ومع ذلك ، عند تغيير نوع طبقة Google الأساسية ، تضيع "إمكانية النقر".

بارتفدي علق في 6 ديسمبر 2012

عمل رائعahocevar ، نظرًا لأن قدرة النقر على الإبلاغ عن خطأ ليست تراجعًا ، أود أن أقول المضي قدمًا والدمج حتى لو لم نتمكن من إصلاح ذلك.

أكد أن اختبارات Google اجتازت أحدث إصدارات FF و Chrome.

أهوسيفار علق في 6 ديسمبر 2012

bartvde ، هل يمكنك إلقاء نظرة أخرى من فضلك؟ بعد، بعدما 978cb4b أصبح الحل أبسط الآن ، ويمكن النقر دائمًا على رابط "الإبلاغ عن خطأ في الخريطة".

بارتفدي علق في 6 ديسمبر 2012

حتى أفضل العمل الآن ، يرجى الدمج

بارتفدي علق في 7 ديسمبر 2012

تم الإبلاغ عنها بواسطة Denis Rykov على openlayers-dev ML:

بعد إعادة صياغة طبقة Google مؤخرًا - أصبحت شفافية تطبيقي لجميع عناصر الخريطة div (بما في ذلك طبقات wms وأزرار التكبير الشامل) حوالي 50٪. العودة من dev / OpenLayers.js إلى api / OpenLAyers.js يحل المشكلة.

أهوسيفار علق في 7 ديسمبر 2012

عند النظر إلى http://openlayers.org/dev/examples/osm-google.html والتبديل بين طبقة Google وطبقة OSM ، يمكنني بالفعل معرفة الفرق بالنظر إلى أزرار +/-. لكني لا أرى أي نمط عتامة محسوب. bartvde ، هل ترى أي شيء مريب في مفتش العناصر؟

بارتفدي علق في 7 ديسمبر 2012

أرى ما تعنيهahocevar لكنني أيضًا لا أرى أي شيء في مفتش العناصر.

أهوسيفار علق في 7 ديسمبر 2012

bartvde: Nevermind ، لقد رأيت للتو نفس الاختلاف في المظهر +/- على http://dev.openlayers.org/releases/OpenLayers-2.12/examples/osm-google.html ، لذلك ربما يوجد شيء محدد في OP طلب. دعنا ننتظر مثالًا بسيطًا من OP.

البروبينات علق في 8 ديسمبر 2012

هناك مشكلة أخرى في هذا الرمز الجديد ، والتي استغرقت وقتًا طويلاً لتعريبها ، ولكن في الواقع من السهل جدًا إعادة إنتاجها.
التغيير قل مثال spherical-mercator بحيث تكون إضافة طبقات google في وظيفة منفصلة:

ثم قم بتحميل الصفحة وأضف متجهًا. ثم قم بتشغيل addGoogle () وإذا نظرت إلى ناقل div ، على سبيل المثال باستخدام svg (لقد اختبرت فقط باستخدام svg):
map.layers [4] .div.firstChild.lastChild.firstChild
سترى أن المتجه قد تم تكراره وليس إعادة رسمه.

لا تحدث هذه المشكلة مع الإصدار القديم من طبقة google أو مع أي نوع طبقة آخر ، ولا تحدث إذا تركت setBaseLayer () وقمت بذلك عبر layerwitcher. لا يمكنني معرفة سبب حدوث ذلك ، ولكن يبدو أنه مع هذا الرمز الجديد ، فإن divs التي تم إنشاؤها بواسطة addLayers () ليست جاهزة تمامًا بحلول الوقت الذي يتم فيه تشغيل setBaseLayer () ويصبح العارض مرتبكًا بطريقة ما.


OpenLayers. شكل. ArcXML

قراءة / Wite ArcXML. قم بإنشاء مثيل جديد باستخدام مُنشئ OpenLayers.Format.ArcXML.

يرث من

OpenLayers. شكل. ArcXMLقراءة / Wite ArcXML.
ملكيات
fontStyleKeys قائمة المفاتيح المستخدمة في تصميم الخط.
طلبطلب get_image مخصص لخادم ArcIMS.
استجابةاستجابة موزعة من خادم ArcIMS.
البناء
OpenLayers. شكل. ArcXMLقم بإنشاء محلل / كاتب جديد لـ ArcXML.
المهام
تحليل مغلفتحليل مصفوفة من الإحداثيات في بنية مغلف ArcXML.
إضافة طبقاتأضف مجموعة طبقات إلى مجموعة طبقات أخرى.
addImageSizeاضبط حجم الصورة المطلوبة.
addCoordSysأضف معلومات نظام الإحداثيات إلى كائن.
خطأتحقق لمعرفة ما إذا كانت الاستجابة من الخادم خطأ.
قرأقراءة البيانات من سلسلة ، وإرجاع الرد.
اكتبقم بإنشاء سلسلة مستند ArcXml لإرسالها إلى خادم ArcIMS.
تحليل الاستجابةاحصل على استجابة ArcXML ، وقم بتحليل في هذا الكائن وخصائص rsquos الداخلية.
تحليل السمات
التحليل الهندسي

ملكيات

FontStyleKeys

قائمة المفاتيح المستخدمة في تصميم الخط.

طلب

طلب get_image مخصص لخادم ArcIMS.

استجابة

استجابة موزعة من خادم ArcIMS.

البناء

OpenLayers. شكل. ArcXML

قم بإنشاء محلل / كاتب جديد لـ ArcXML. قم بإنشاء مثيل من هذه الفئة لبدء تأليف طلب لخدمة ArcIMS. يتم استخدام هذا بشكل أساسي بواسطة طبقة ArcIMS ، ولكن يمكن استخدامه للقيام بأشياء برية أخرى ، مثل الترميز الجغرافي.

حدود

المهام

تحليل مغلف

تحليل مصفوفة من الإحداثيات في بنية مغلف ArcXML.

حدود

الحسد كائن مغلف يحتوي على الإحداثيات التي تم تحليلها.
arr مصفوفة من الإحداثيات بالترتيب: [minx، miny، maxx، maxy]

إضافة طبقات

أضف مجموعة طبقات إلى مجموعة طبقات أخرى. كل طبقة في القائمة هي مجموعة من <معرف ، مرئي>. تمثل مجموعات الطبقات هذه عناصر / ARCXML / REQUEST / get_image / PROPERTIES / LAYERLIST / LAYERDEF في ArcXML

TODO: أضف دعمًا لعرض الطبقة الديناميكية.

حدود

AddImage الحجم

اضبط حجم الصورة المطلوبة.

حدود

AddCoordSys

أضف معلومات نظام الإحداثيات إلى كائن. قد يكون الكائن

حدود

الفذ الخصائص أو هيكل عامل التصفية ArcXML.
fsys أو أو أو تمثيل الإسقاط. إذا كان & rsquos a ، يفترض أن تكون القيمة هي SRID. إذا كان & rsquos a AND Proj4js متاح ، يتم استخراج رقم الإسقاط واسمه من هناك. إذا & rsquos عامل تصفية أو بنية ArcXML ميزة ، يتم نسخها.

خطأ

تحقق لمعرفة ما إذا كانت الاستجابة من الخادم خطأ.

حدود

عائدات

صحيح إذا كانت الاستجابة خطأ.

قراءة البيانات من سلسلة ، وإرجاع الرد.

حدود

عائدات

<& ltOpenLayers.Format.ArcXML.Response & gt> استجابة ArcXML. لاحظ أن بيانات الاستجابة هذه قد تتغير في المستقبل.

اكتب

قم بإنشاء سلسلة مستند ArcXml لإرسالها إلى خادم ArcIMS.

عائدات

سلسلة تمثل طلب مستند ArcXML.

تحليل الاستجابة

خذ استجابة ArcXML ، وقم بتحليل في هذا الكائن & rsquos الخصائص الداخلية.


ترتيب

معلمات CGI

اسم اكتب مطلوب قيم تلاحظ
طلب سلسلة رقم رمز kml kmz نوع الطلب (مثل OGC WFS)
خريطة سلسلة نعم المسار إلى ملف الخريطة
أكتب اسم سلسلة (يمكن أن تكون قائمة CSV) رقم الطبقة (الطبقات) التي سيتم تقديمها ، إذا كانت فارغة ، يتم تقديم جميع الطبقات كارتباطات شبكة
منقي سلسلة رقم مرشح XML OGC جيد التكوين ، نشط فقط عند طلب طبقة واحدة
bbox سلسلة رقم معيار bbox (لم يتم تنفيذه بعد)
التشفير سلسلة رقم ملف الخريطة وترميز السمات ، افتراضيًا هو ISO-8859-1

البيانات الوصفية

يعيد KMLMapServer استخدام معظم بيانات OGC الوصفية الحالية المأخوذة من قسم LAYER في الملف ، وحدد القليل منها. لا يلزم أي منها ، ولكن إذا كنت تريد خدمة البيانات النقطية ، فأنت بحاجة إليها بالفعل من أجل الحصول على تثبيت WMS MapServer فعال. ملاحظة بالنسبة إلى البيانات النقطية: أضف EPSG: 4326 إلى بيانات تعريف WMS_SRS على جميع طبقات ملف الخريطة ، وإلا فلن يعمل WMS مع Google Earth.
اسم المعنى نوع الطبقة تلاحظ
RESULT_FIELDS العمود الذي سيتم أخذ اسم العنصر منه المتجه يتم عرض الاسم افتراضيًا في العمود الأول في بالونات Google Earth وجدول المحتويات
DESCRIPTION_TEMPLATE قالب وصف مخصص المتجه إذا كان موجودًا ، فسيتم استخدامه لبناء سلسلة الوصف. يتم استبدال المعلمات المحاطة بـ & # 8220٪ & # 8221 حرف بقيم حقيقية من الحقل المقابل للميزة
BALLOON_TEMPLATE قالب بالون مخصص (تلميح) المتجه إذا كان موجودًا ، فسيتم استخدامه لبناء التلميح. يمكن تنسيق HTML ، واستبدال $ [name] ans $ [description].
الوصف OWS_TITLE WFS_TITLE WMS_TITLE وصف الطبقة الجميع يتم البحث في كل تلك البيانات الوصفية (بهذا الترتيب) للحصول على وصف الطبقة
KML_CACHE الحياة مخبأ المتجه عدد الثواني التي تنتهي بعدها ذاكرة التخزين المؤقت لطبقة معينة ، إذا كانت فارغة أو غير موجودة ، فسيتم تعطيل ذاكرة التخزين المؤقت لتلك الطبقة. افتراضات على 0 (ذاكرة التخزين المؤقت معطلة)
KML_SKIP تخطي هذه الطبقة الجميع لا تخدم هذه الطبقة ، الافتراضي إلى false

خطأ في تحليل XML: خطأ في طلب WFS مع Openlayers؟ - نظم المعلومات الجغرافية

نحن نستخدم حاليًا ESRI SDE مع هندسة BLOB. (SDE 9.2 على Oracle 10.2).
(في الواقع يوضح أمين مكتبة البيانات الخاص بي: BLOB هو ما يتم استخدامه في الغالب للتخزين الهندسي. تستخدم بعض الكلمات الرئيسية (مثل USERS) SDELOB (مصطلح أحدث من BLOB).)

نحن نخطط لوضع SDE 10 (و Oracle 11) على خادم جديد تمامًا وتحميله بالبيانات.
رئيسي يهتم الآن بـ ST_GEOMETRY (أعتقد أن له مزايا مثل الوصول إلى SQL).
http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#geodatabases/the_st_g432914457.htm
http://webhelp.esri.com/arcgisserver/9.3/java/geodatabases/st_geom-270510096.htm

نظرت حولي في وثائق GeoServer و GeoTools ولكن لم أجد إجابة على السؤال:
هل يدعم GeoServer ST_GEOMETRY لـ SDE؟ أم أنها في المستقبل القريب؟

أليدا فريمان ، GISP ، مدير خدمات خرائط الويب
ماسجيس
قسم تقنية المعلومات
251 ش كوزواى الدور الخامس
بوسطن ، ماساتشوستس 02114
رقم الهاتف: 617-626-1193
رقم الفاكس: 617-626-1249
http://www.mass.gov/mgis - MassGIS
http://lyceum.massgis.state.ma.us - خدمات الويب ويكي
MassGIS هو مكتب الكومنولث للمعلومات الجغرافية
مصدر للتكنولوجيا والبيانات لمستخدمي نظم المعلومات الجغرافية في الكومنولث

rs] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟ & ltbr & gt & ltbr & gt

& ltfont face = 3D "Arial، sans-serif" الحجم = 3D "2" & gt
& ltdiv & gt نحن نستخدم حاليًا ESRI SDE مع هندسة BLOB. (SDE 9.2 على O =
Racle 10.2). & lt / div & gt
& ltdiv & gt (يوضح أمين مكتبة البيانات: & ltfont face = 3D "Arial، sans-seri =
f "& gtBLOB هو ما يتم استخدامه في الغالب للتخزين الهندسي. & ampnbsp بعض الكلمات الرئيسية =
(مثل المستخدمين) استخدم SDELOB (مصطلح أحدث من BLOB).) & lt / font & gt & lt / div & gt
& ltdiv & gt & ltfont face = 3D "Arial، sans-serif" & gt & ampnbsp & lt / font & gt & lt / div & gt
& ltdiv & gt نخطط لوضع SDE 10 (و Oracle 11) على خادم جديد تمامًا a =
و تحميله بالبيانات. & lt / div & gt
& ltdiv & gt يهتم رئيسي الآن بـ ST_GEOMETRY (أعتقد أن له مزايا s =
مثل وصول SQL). & lt / div & gt
& ltdiv & gt & lta onclick = 3D "return checkLinkHref (this.href)" target = 3D "_blank" hre =
f = 3D "http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#geodatabases/=
the_st_g432914457.htm "& gt & ltfont color = 3D" # 0000ff "& gt & ltu & gthttp: //webhelp.esri.com/=
arcgisserver / 9.3 / java / index.htm # geodatabases / the_st_g432914457.htm & lt / u & gt & lt / fo =
nt & gt & lt / a & gt & lt / div & gt
& ltdiv & gt & lta onclick = 3D "return checkLinkHref (this.href)" target = 3D "_blank" hre =
f = 3D "http://webhelp.esri.com/arcgisserver/9.3/java/geodatabases/st_geom-27=
0510096.htm "& gt & ltfont color = 3D" # 0000ff "& gt & ltu & gthttp: //webhelp.esri.com/arcgisserv=
er / 9.3 / java / geodatabases / st_geom-270510096.htm & lt / u & gt & lt / font & gt & lt / a & gt & lt / div & gt
& ltdiv & gt & ampnbsp & lt / div & gt
& ltdiv & gtI نظرت حولي في وثائق GeoServer و GeoTools لكنني لم أستطع '=
t للعثور على إجابة للسؤال: & ltbr & gt

هل يدعم GeoServer ST_GEOMETRY لـ SDE؟ & ampnbsp أم أنه في القريب f =
يوتور؟ & lt / div & gt
& ltdiv & gt & ampnbsp & lt / div & gt
& ltdiv & gtAleda Freeman، GISP، Web Mapping Services Manager & lt / div & gt
& ltdiv & gtMassGIS & lt / div & gt
& ltdiv & gt قسم تقنية المعلومات & ltbr & gt

251 شارع الجسر الدور الخامس & lt / div & gt
& ltdiv & gtBoston، MA 02114 & lt / div & gt
& ltdiv & gtphone: 617-626-1193 & lt / div & gt
& ltdiv & gtfax: 617-626-1249 & lt / div & gt
& ltdiv & gt & lta onclick = 3D "return checkLinkHref (this.href)" target = 3D "_blank" hre =
f = 3D "http://www.mass.gov/mgis" & gt & ltfont color = 3D "# 0000ff" & gt & ltu & gthttp: //www.mass.=
gov / mgis & lt / u & gt & lt / font & gt & lt / a & gt - MassGIS & lt / div & gt
& ltdiv & gt & lta onclick = 3D "return checkLinkHref (this.href)" target = 3D "_blank" hre =
f = 3D "http://lyceum.massgis.state.ma.us" & gt & ltfont color = 3D "# 0000ff" & gt & ltu & gthttp: // =
lyceum.massgis.state.ma.us & lt / u & gt & lt / font & gt & lt / a & gt - خدمات الويب Wiki & lt / div & gt
& ltdiv & gtMassGIS هو مكتب الكومنولث للمعلومات الجغرافية & lt / div & gt
& ltdiv & gtA موارد التكنولوجيا والبيانات لمستخدمي نظم المعلومات الجغرافية في الكومنولث & lt / div =
& ltdiv & gt & ampnbsp & lt / div & gt
& ltdiv & gt & ampnbsp & lt / div & gt
& lt / الخط & GT

قد يحتوي هذا البريد الإلكتروني على معلومات سرية وهي
مخصص للمستلم (المستلمين) المحددين فقط. إذا كنت كذلك
ليس المستلم المحدد الذي يجب عدم اتخاذ أي إجراء فيه
فيما يتعلق بهذا البريد الإلكتروني ، بخلاف إبلاغنا بذلك
استلموها عن طريق الخطأ.

لينكس لأنظمة المعلومات المحدودة
93-99 أبر ريتشموند رود
لندن SW15 2TG
المملكة المتحدة
الويب: http://www.lynxinfo.co.uk
البريد الإلكتروني: ***@lynxinfo.co.uk
هاتف: +44 (0) 20 8780 2634
فاكس: +44 (0) 20 8780 0931

هذه الصفحة: http://argyron.limnology.wisc.edu:8099/arcgismanager/help/index.htm#geodatabases/an_over1698501291.htm

يقول أن ال
نوع ArcSDE المكاني ST_Geometry

* يستخدم النوع المكاني الممتد ArcSDE لإدارة بيانات المتجه

* يدعم ISO و OGC SQL API للمكان

* استنادًا إلى مواصفات ISO SQL MM للمكان

أليدا فريمان ، GISP ، مدير خدمات خرائط الويب
ماسجيس
قسم تقنية المعلومات
251 ش كوزواى الدور الخامس
بوسطن ، ماساتشوستس 02114
رقم الهاتف: 617-626-1193
رقم الفاكس: 617-626-1249
http://www.mass.gov/mgis - MassGIS
http: //lyceum.massgis.state.ma.us<h http://lyceum.massgis.state.ma.us/> - ويكي خدمات الويب
MassGIS هو مكتب الكومنولث للمعلومات الجغرافية
مصدر للتكنولوجيا والبيانات لمستخدمي نظم المعلومات الجغرافية في الكومنولث

________________________________
من: geoserver-users-***@lists.sourceforge.net [mailto: geoserver-users - *** @ lists.sourceforge.net] نيابة عن كريس مورغان
تاريخ الإرسال: الجمعة ، 02 يوليو ، 2010 ، الساعة 5:04 مساءً
إلى: geoserver-***@lists.sourceforge.net
الموضوع: رد: [مستخدمو Geoserver] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

ST_GEOMETRY هو تنسيق ESRI - لست متأكدًا مما إذا كان متوافقًا مع المعايير.
نستخدم نوع Oracle SDO_GEOMETRY - يبدو أنه يعمل بشكل جيد
مع كل من SDE و Geoserver ، ولديك ميزة استخدام
SQL لتحميل البيانات والاستعلام عنها إذا كنت تريد ذلك.

كريس
---- رسالة أصلية ----
من: "Freeman، Aleda (EEA)" <***@state.ma.us>
إلى: "geoserver-***@lists.sourceforge.net" <geoserver-***@lists.sourceforge.net>
تاريخ الإرسال: الجمعة ، 2 تموز (يوليو) 2010 ، الساعة 21:37 مساءً
الموضوع: [Geoserver-users] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

نحن نستخدم حاليًا ESRI SDE مع هندسة BLOB. (SDE 9.2 على Oracle 10.2).
(في الواقع يوضح أمين مكتبة البيانات الخاص بي: BLOB هو ما يتم استخدامه في الغالب للتخزين الهندسي. تستخدم بعض الكلمات الرئيسية (مثل USERS) SDELOB (مصطلح أحدث من BLOB).)

نحن نخطط لوضع SDE 10 (و Oracle 11) على خادم جديد تمامًا وتحميله بالبيانات.
رئيسي يهتم الآن بـ ST_GEOMETRY (أعتقد أن له مزايا مثل الوصول إلى SQL).
http://webhelp.esri.com/arcgisserver/9.3/java/index.htm#geodatabases/the_st_g432914457.htm
http://webhelp.esri.com/arcgisserver/9.3/java/geodatabases/st_geom-270510096.htm

نظرت حولي في وثائق GeoServer و GeoTools لكنني لم أتمكن من العثور على إجابة للسؤال:
هل يدعم GeoServer ST_GEOMETRY لـ SDE؟ أم أنها في المستقبل القريب؟

أليدا فريمان ، GISP ، مدير خدمات خرائط الويب
ماسجيس
قسم تقنية المعلومات
251 ش كوزواى الدور الخامس
بوسطن ، ماساتشوستس 02114
رقم الهاتف: 617-626-1193
رقم الفاكس: 617-626-1249
http://www.mass.gov/mgis - MassGIS
http://lyceum.massgis.state.ma.us - خدمات الويب ويكي
MassGIS هو مكتب الكومنولث للمعلومات الجغرافية
مصدر للتكنولوجيا والبيانات لمستخدمي نظم المعلومات الجغرافية في الكومنولث

------------------------------------------------------------
يتم فحص رسائل البريد الإلكتروني الواردة والصادرة بحثًا عن الفيروسات
بواسطة Sophos AntiVirus.

قد يحتوي هذا البريد الإلكتروني على معلومات سرية وهي
مخصص للمستلم (المستلمين) المحددين فقط. إذا كنت كذلك
ليس المستلم المحدد الذي يجب عدم اتخاذ أي إجراء فيه
فيما يتعلق بهذا البريد الإلكتروني ، بخلاف إبلاغنا بذلك
استلموها عن طريق الخطأ.

لينكس لأنظمة المعلومات المحدودة
93-99 أبر ريتشموند رود
لندن SW15 2TG
المملكة المتحدة
الويب: http://www.lynxinfo.co.uk
البريد الإلكتروني: ***@lynxinfo.co.uk
هاتف: +44 (0) 20 8780 2634
فاكس: +44 (0) 20 8780 0931

ما أفهمه هو أنه يجب دعم ST_GEOMETRY خارج الصندوق.
إنها مجرد واحدة من تنسيقات التخزين الهندسية الأساسية التي يدعمها ESRI ،
لكنها شفافة لواجهة برمجة تطبيقات العميل.

هذا ليس صحيحًا تمامًا كما أفهمه.
إذا كنت تستخدم SDE كمصدر Geoserver الخاص بك ، فستكون ST_GEOMETRY كذلك
مدعومة ضمنيًا ، جنبًا إلى جنب مع التنسيقات الأخرى التي تدعمها SDE.
لكن (في الوقت الحالي) ، لا يمكنك الاستغناء عن طبقة SDE الوسيطة
للوصول بواسطة Geoserver.
بينما إذا كنت تستخدم نوع Oracle SDO_GEOMETRY ، فلن تحتاج
SDE على الإطلاق. من المفترض أن شخصًا ما يمكنه إنشاء ESRI ST_GEOMETRY
مخزن البيانات لـ Geoserver ، ولكن في الوقت الحالي ، لا يوجد واحد.

----- رسالة أصلية -----
من: "Gabriel Roldan" <***@opengeo.org>
إلى: "Freeman، Aleda (EEA)" <***@state.ma.us>
نسخة إلى: "Chris Morgan" "<***@lynxinfo.co.uk>
<geoserver-***@lists.sourceforge.net>
تاريخ الإرسال: الاثنين 5 يوليو 2010 5:10 مساءً
الموضوع: رد: [مستخدمو Geoserver] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

------------------------------------------------------------
يتم فحص رسائل البريد الإلكتروني الواردة والصادرة بحثًا عن الفيروسات
بواسطة Sophos AntiVirus.

قد يحتوي هذا البريد الإلكتروني على معلومات سرية وهي
مخصص للمستلم (المستلمين) المحددين فقط. إذا كنت كذلك
ليس المستلم المحدد الذي يجب عدم اتخاذ أي إجراء فيه
فيما يتعلق بهذا البريد الإلكتروني ، بخلاف إبلاغنا بذلك
استلموها عن طريق الخطأ.

لينكس لأنظمة المعلومات المحدودة
93-99 أبر ريتشموند رود
لندن SW15 2TG
المملكة المتحدة
الويب: http://www.lynxinfo.co.uk
البريد الإلكتروني: ***@lynxinfo.co.uk
هاتف: +44 (0) 20 8780 2634
فاكس: +44 (0) 20 8780 0931

حسنًا ، هذا جيد على ما أعتقد. نحن لا نتطلع إلى التخلص من SDE ، فقط استخدم نوعًا هندسيًا أساسيًا مختلفًا في المرة القادمة.
أعتقد أنه من المحتمل أن أحاول إعداد طبقة اختبار والتأكد من أن GeoServer يمكنه الوصول إليها.
أتساءل عما إذا كان بإمكاننا مزج أنواع الهندسة في مثيل SDE واحد. سوف تحقق مع مسؤول SDE لدينا.
سأخبرك كيف يعمل.

أليدا فريمان ، GISP ، مدير خدمات خرائط الويب
ماسجيس
قسم تقنية المعلومات
251 ش كوزواى الدور الخامس
بوسطن ، ماساتشوستس 02114
رقم الهاتف: 617-626-1193
رقم الفاكس: 617-626-1249
http://www.mass.gov/mgis - MassGIS
http://lyceum.massgis.state.ma.us - خدمات الويب ويكي
MassGIS هو مكتب الكومنولث للمعلومات الجغرافية
مصدر للتكنولوجيا والبيانات لمستخدمي نظم المعلومات الجغرافية في الكومنولث

-----رسالة أصلية-----
من: geoserver-users-***@lists.sourceforge.net [mailto: geoserver-users - *** @ lists.sourceforge.net] نيابة عن كريس مورغان
تاريخ الإرسال: الاثنين ، 05 تموز (يوليو) 2010 ، الساعة 12:22 مساءً
إلى: geoserver-***@lists.sourceforge.net
الموضوع: رد: [مستخدمو Geoserver] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

هذا ليس صحيحًا تمامًا كما أفهمه.
إذا كنت تستخدم SDE كمصدر Geoserver الخاص بك ، فسيتم دعم ST_GEOMETRY ضمنيًا ، جنبًا إلى جنب مع التنسيقات الأخرى التي تدعمها SDE.
لكن (في الوقت الحالي) ، لا يمكنك الاستغناء عن طبقة SDE الوسيطة للوصول إليها بواسطة Geoserver.
بينما إذا كنت تستخدم نوع SDO_GEOMETRY من Oracle ، فلن تحتاج إلى SDE على الإطلاق. من المفترض أن يقوم شخص ما بإنشاء ESRI ST_GEOMETRY مخزن بيانات لـ Geoserver ، ولكن في الوقت الحالي ، لا يوجد واحد.

----- رسالة أصلية -----
من: "Gabriel Roldan" <***@opengeo.org>
إلى: "Freeman، Aleda (EEA)" <***@state.ma.us>
نسخة إلى: "" Chris Morgan "" <***@lynxinfo.co.uk> <geoserver-***@lists.sourceforge.net>
تاريخ الإرسال: الاثنين 5 يوليو 2010 5:10 مساءً
الموضوع: رد: [مستخدمو Geoserver] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

------------------------------------------------------------
يتم فحص رسائل البريد الإلكتروني الواردة والصادرة بحثًا عن فيروسات بواسطة Sophos AntiVirus.

قد يحتوي هذا البريد الإلكتروني على معلومات سرية مخصصة للمستلم (المستلمين) المحددين فقط. إذا لم تكن أنت المستلم المحدد ، فيجب ألا تتخذ أي إجراء فيما يتعلق بهذا البريد الإلكتروني ، بخلاف إخطارنا بأنك استلمته عن طريق الخطأ.

لينكس لأنظمة المعلومات المحدودة
93-99 أبر ريتشموند رود
لندن SW15 2TG
المملكة المتحدة
الويب: http://www.lynxinfo.co.uk
البريد الإلكتروني: ***@lynxinfo.co.uk
هاتف: +44 (0) 20 8780 2634
فاكس: +44 (0) 20 8780 0931

نعم ، يمكنك الحصول على طبقات مختلفة باستخدام أشكال هندسية مختلفة
أنواع في مثيل واحد SDE.

----- رسالة أصلية -----
من: "Freeman، Aleda (EEA)" <***@state.ma.us>
إلى: "'Chris Morgan'" <***@lynxinfo.co.uk>
نسخة إلى: <geoserver-***@lists.sourceforge.net>
تاريخ الإرسال: الثلاثاء ، 06 يوليو ، 2010 2:14 مساءً
الموضوع: RE: [مستخدمو Geoserver] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

حسنًا ، هذا جيد على ما أعتقد. نحن لا نتطلع إلى التخلص من SDE ، فقط استخدم ملف
نوع الهندسة الأساسية المختلفة في المرة القادمة.
أعتقد أنه من المحتمل أن أحاول إعداد طبقة اختبار والتأكد من GeoServer
يمكن الوصول إليه.
أتساءل عما إذا كان بإمكاننا مزج أنواع الهندسة في مثيل SDE واحد. سوف تحقق مع
مسؤول SDE لدينا.
سأخبرك كيف يعمل.

أليدا فريمان ، GISP ، مدير خدمات خرائط الويب
ماسجيس
قسم تقنية المعلومات
251 ش كوزواى الدور الخامس
بوسطن ، ماساتشوستس 02114
رقم الهاتف: 617-626-1193
رقم الفاكس: 617-626-1249
http://www.mass.gov/mgis - MassGIS
http://lyceum.massgis.state.ma.us - خدمات الويب ويكي
MassGIS هو مكتب الكومنولث للمعلومات الجغرافية
مصدر للتكنولوجيا والبيانات لمستخدمي نظم المعلومات الجغرافية في الكومنولث

-----رسالة أصلية-----
من: geoserver-users-***@lists.sourceforge.net
[mailto: geoserver-users - *** @ lists.sourceforge.net] نيابة عن كريس
مورغان
تاريخ الإرسال: الاثنين 5 يوليو 2010 الساعة 12:22 مساءً
إلى: geoserver-***@lists.sourceforge.net
الموضوع: رد: [مستخدمو Geoserver] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

هذا ليس صحيحًا تمامًا كما أفهمه.
إذا كنت تستخدم SDE كمصدر Geoserver الخاص بك ، فسيكون ST_GEOMETRY ضمنيًا
مدعوم ، إلى جانب التنسيقات الأخرى التي يدعمها SDE.
لكن (في الوقت الحالي) ، لا يمكنك الاستغناء عن طبقة SDE الوسيطة لـ
الوصول عن طريق Geoserver.
بينما إذا كنت تستخدم نوع SDO_GEOMETRY من Oracle ، فلن تحتاج إلى SDE على الإطلاق.
من المفترض أن يقوم شخص ما بإنشاء مخزن بيانات ESRI ST_GEOMETRY لـ
Geoserver ، لكن في الوقت الحالي ، لا يوجد واحد.

----- رسالة أصلية -----
من: "Gabriel Roldan" <***@opengeo.org>
إلى: "Freeman، Aleda (EEA)" <***@state.ma.us>
نسخة إلى: "Chris Morgan" "<***@lynxinfo.co.uk>
<geoserver-***@lists.sourceforge.net>
تاريخ الإرسال: الاثنين 5 يوليو 2010 5:10 مساءً
الموضوع: رد: [مستخدمو Geoserver] هل يدعم GeoServer ST_GEOMETRY الخاص بـ SDE؟

------------------------------------------------------------
يتم فحص رسائل البريد الإلكتروني الواردة والصادرة بحثًا عن فيروسات بواسطة Sophos AntiVirus.

قد يحتوي هذا البريد الإلكتروني على معلومات سرية مخصصة لـ
اسم المستلم (المستلمون) فقط. إذا لم تكن أنت المستلم المحدد فلا يجب عليك ذلك
اتخاذ أي إجراء فيما يتعلق بهذا البريد الإلكتروني ، بخلاف إخطارنا بذلك
استلموها عن طريق الخطأ.

لينكس لأنظمة المعلومات المحدودة
93-99 أبر ريتشموند رود
لندن SW15 2TG
المملكة المتحدة
الويب: http://www.lynxinfo.co.uk
البريد الإلكتروني: ***@lynxinfo.co.uk
هاتف: +44 (0) 20 8780 2634
فاكس: +44 (0) 20 8780 0931

------------------------------------------------------------------------------
هذا البريد الإلكتروني الخاص بـ SF.net برعاية Sprint ما الذي ستفعله أولاً مع EVO ،
أول هاتف 4G؟
قم بزيارة sprint.com/first - http://p.sf.net/sfu/sprint-com-first
_______________________________________________
القائمة البريدية لمستخدمي Geoserver
Geoserver-***@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/geoserver-users

------------------------------------------------------------
يتم فحص رسائل البريد الإلكتروني الواردة والصادرة بحثًا عن الفيروسات
بواسطة Sophos AntiVirus.

قد يحتوي هذا البريد الإلكتروني على معلومات سرية وهي
مخصص للمستلم (المستلمين) المحددين فقط. إذا كنت كذلك
ليس المستلم المحدد الذي يجب عدم اتخاذ أي إجراء فيه
فيما يتعلق بهذا البريد الإلكتروني ، بخلاف إبلاغنا بذلك
استلموها عن طريق الخطأ.

لينكس لأنظمة المعلومات المحدودة
93-99 أبر ريتشموند رود
لندن SW15 2TG
المملكة المتحدة
الويب: http://www.lynxinfo.co.uk
البريد الإلكتروني: ***@lynxinfo.co.uk
هاتف: +44 (0) 20 8780 2634
فاكس: +44 (0) 20 8780 0931

صيح. ستكون ميزة رائعة ، للسماح للأشخاص بإسقاط SDE حتى
إذا لم يتم تكوينه لاستخدام العناصر الأصلية للواجهة الخلفية المكانية.
ولكن من المحتمل أن يكون هناك قدر غير ضئيل من العمل ، حيث من المحتمل أن يتضمن ملف
قليلا من الهندسة العكسية.

لقد جربت نوع هندسة SDE ST_Geometry ولسوء الحظ لا تعمل بنسبة 100٪ (لكنها قريبة ، يبدو أنها مشكلة شرط / عامل التصفية محدودة).
Oracle 10.2 ، SDE 9.2 SP5 ، GeoServer 2.0.1 مع SDE 9.3 jars.
هذا ما أراه في الاختبارات القليلة التي أجريتها ، مع مزيد من التفاصيل في الأسفل عن الأخطاء.

هل يجب أن أنشئ تقرير خطأ؟ لست متأكدًا مما إذا كان الخطأ واحدًا أو اثنين بناءً على أخطاء مختلفة قليلاً رأيتها حتى الآن.

ما الذي يعمل:
1. رسم WMS الأساسي في OpenLayers
2. يعمل WMS مع مرشح مكاني - يتقاطع
3. WMS مع SLD باستخدام القواعد والمرشحات
4. وصف WFS نوع الميزة
5. WFS GetFeature URL مع PropertyName لإرجاع حقل واحد
6. WFS GetFeature URL مع عامل تصفية CQL
7. WFST إدراج بولي


أدوات للعمل مع الويب من R.

الأدوات الأساسية لطلبات HTTP

هناك ثلاث حزم رئيسية يجب أن تغطي معظم حالات الاستخدام للتفاعل مع الويب من R. crul هو عميل HTTP قائم على R6 يوفر طلبات HTTP غير متزامنة ومساعد ترقيم الصفحات واستهزاء HTTP عبر webmockr وطلب التخزين المؤقت لاختبارات الوحدة عبر vcr . يستهدف crul مطوري R أكثر من المستخدمين النهائيين. httr provides more of a user facing client for HTTP requests and differentiates from the former package in that it provides support for OAuth. Note that you can pass in additional curl options when you instantiate R6 classes in crul, and the التكوين parameter in httr. curl is a lower-level package that provides a closer interface between R and the libcurl C library , but is less user-friendly. curl underlies both crul and httr. curl may be useful for operations on web-based XML or to perform FTP operations (as crul and httr are focused primarily on HTTP). curl::curl() is an SSL-compatible replacement for base R’s url() and has support for http 2.0, SSL (https, ftps), gzip, deflate and more. For websites serving insecure HTTP (i.e. using the “http” not “https” prefix), most R functions can extract data directly, including read.table و read.csv this also applies to functions in add-on packages such as jsonlite::fromJSON() و XML::parseXML. For more specific situations, the following resources may be useful:

  • RCurl is another low level client for libcurl. Of the two low-level curl clients, we recommend using curl. httpRequest is another low-level package for HTTP requests that implements the GET, POST and multipart POST verbs, but we do not recommend its use.
  • request provides a high-level package that is useful for developing other API client packages. httping provides simplified tools to ping and time HTTP requests, around httr calls. httpcache provides a mechanism for caching HTTP requests.
  • For dynamically generated webpages (i.e., those requiring user interaction to display results), RSelenium can be used to automate those interactions and extract page contents. It provides a set of bindings for the Selenium 2.0 webdriver using the JsonWireProtocol . It can also aid in automated application testing, load testing, and web scraping. seleniumPipes ( GitHub ) provides a “pipe”-oriented interface to the same. An alternative to the former two packages is splashr that vouches to be a lightweight altnernative. rdom (not on CRAN) uses phantomjs to access a webpage’s Document Object Model (DOM).
  • For capturing static content of web pages postlightmercury is a client for the web service Mercury that turns web pages into structured and clean text.
  • Another, higher-level alternative package useful for webscraping is rvest, which is designed to work with magrittr to make it easy to express common web scraping tasks.
  • Many base R tools can be used to download web content, provided that the website does not use SSL (i.e., the URL does not have the “https” prefix). download.file() is a general purpose function that can be used to download a remote file. For SSL, the download() function in downloader wraps download.file(), and takes all the same arguments.
  • Tabular data sets (e.g., txt, csv, etc.) can be input using read.table(), read.csv(), and friends, again assuming that the files are not hosted via SSL. An alternative is to use httr::GET (أو RCurl::getURL) to first read the file into R as a character vector before parsing with read.table(text=. ), or you can download the file to a local directory. rio ( GitHub ) provides an import() function that can read a number of common data formats directly from an https:// URL. The repmis function source_data() can load and cache plain-text data from a URL (either http or https). That package also includes source_Dropbox() for downloading/caching plain-text data from non-public Dropbox folders and source_XlsxData() for downloading/caching Excel xlsx sheets.
  • المصادقة : Using web resources can require authentication, either via API keys, OAuth, username:password combination, or via other means. Additionally, sometimes web resources that require authentication be in the header of an http call, which requires a little bit of extra work. API keys and username:password combos can be combined within a url for a call to a web resource, or can be specified via commands in RCurl or httr. OAuth is the most complicated authentication process, and can be most easily done using httr. See the 6 demos within httr, three for OAuth 1.0 (linkedin, twitter, vimeo) and three for OAuth 2.0 (facebook, GitHub, google). ROAuth is a package that provides a separate R interface to OAuth. OAuth is easier to to do in httr, so start there. googleAuthR provides an OAuth 2.0 setup specifically for Google web services, and AzureAuth provides similar functionality for Azure Active Directory.

Handling HTTP Errors/Codes

  • fauxpas brings a set of Ruby or Python like R6 classes for each individual HTTP status code, allowing simple and verbose messages, with a choice of using messages, warnings, or stops.
  • httpcode is a simple package to help a user/package find HTTP status codes and associated messages by name or number.

Parsing Structured Web Data

The vast majority of web-based data is structured as plain text, HTML, XML, or JSON (javascript object notation). Web service APIs increasingly rely on JSON, but XML is still prevalent in many applications. There are several packages for specifically working with these format. These functions can be used to interact directly with insecure web pages or can be used to parse locally stored or in-memory web files.

  • XML : There are two packages for working with XML: XML and xml2 ( GitHub ). Both support general XML (and HTML) parsing, including XPath queries. The package xml2 is less fully featured, but more user friendly with respect to memory management, classes (e.g., XML node vs. node set vs. document), and namespaces. Of the two, only the XML supports من جديد creation of XML nodes and documents. The XML2R ( GitHub ) package is a collection of convenient functions for coercing XML into data frames. An alternative to XML is selectr , which parses CSS3 Selectors and translates them to XPath 1.0 expressions. XML package is often used for parsing xml and html, but selectr translates CSS selectors to XPath, so can use the CSS selectors instead of XPath.
  • لغة البرمجة : All of the tools that work with XML also work for HTML, though HTML is - in practice - more prone to be malformed. Some tools are designed specifically to work with HTML. xml2::read_html() is a good first function to use for importing HTML. htmltools provides functions to create HTML elements. The selectorgadget browser extension can be used to identify page elements. RHTMLForms reads HTML documents and obtains a description of each of the forms it contains, along with the different elements and hidden fields. scrapeR provides additional tools for scraping data from HTML documents. htmltidy ( GitHub ) provides tools to “tidy” messy HTML documents. htm2txt uses regex to converts html documents to plain text by removing all html tags. Rcrawler does crawling and scraping of web pages.
  • جسون : There are several packages for reading and writing JSON: rjson, RJSONIO, and jsonlite. jsonlite includes a different parser from RJSONIO called yajl . We recommend using jsonlite. Check out the paper describing jsonlite by Jeroen Ooms https://arxiv.org/abs/1403.2805 . jqr provides bindings for the fast JSON library, jq . jsonvalidate ( GitHub ) validates JSON against a schema using the “is-my-json-valid” Javascript library ajv does the same using the ajv Javascript library. ndjson ( GitHub ) supports the “ndjson” format.
  • RSS/Atom : feedeR can be used to parse RSS or Atom feeds. tidyRSS parses RSS, Atom XML/JSON and geoRSS into a tidy data.frame.
  • swagger can be used to automatically generate functions for working with an web service API that provides documentation in Swagger.io format.

Tools for Working with URLs

  • ال httr::parse_url() function can be used to extract portions of a URL. ال RCurl::URLencode() و utils::URLencode() functions can be used to encode character strings for use in URLs. utils::URLdecode() decodes back to the original strings. urltools ( GitHub ) can also handle URL encoding, decoding, parsing, and parameter extraction.
  • iptools can facilitate working with IPv4 addresses, including for use in geolocation. A similar package ipaddress, handles IPv4 and IPv6 addresses and networks.
  • urlshorteneR offers URL expansion and analysis for Bit.ly, Goo.gl, and is.gd. longurl uses the longurl.org API to provide similar functionality.
  • gdns provides access to Google’s secure HTTP-based DNS resolution service.

Tools for Working with Scraped Webpage Contents

  • Several packages can be used for parsing HTML documents. boilerpipeR provides generic extraction of main text content from HTML files removal of ads, sidebars and headers using the boilerpipe Java library. RTidyHTML interfaces to the libtidy library for correcting HTML documents that are not well-formed. This library corrects common errors in HTML documents. W3CMarkupValidator provides an R Interface to W3C Markup Validation Services for validating HTML documents.
  • For XML documents, the XMLSchema package provides facilities in R for reading XML schema documents and processing them to create definitions for R classes and functions for converting XML nodes to instances of those classes. It provides the framework for meta-computing with XML schema in R. xslt is an extension for the xml2 package to transform XML documents by applying an xslt style-sheet. (It can be seen as a modern replacement for Sxslt , which is an interface to Dan Veillard’s libxslt translator, and the SXalan package.) This may be useful for webscraping, as well as transforming XML markup into another human- or machine-readable format (e.g., HTML, JSON, plain text, etc.). SSOAP provides a client-side SOAP (Simple Object Access Protocol) mechanism. Beware, SSOAP itself may not install, and/or its dependencies. The best bet is to get the web service maintainers to switch to REST. XMLRPC provides an implementation of XML-RPC, a relatively simple remote procedure call mechanism that uses HTTP and XML. This can be used for communicating between processes on a single machine or for accessing Web services from within R.
  • Rcompression (not on CRAN): Interface to zlib and bzip2 libraries for performing in-memory compression and decompression in R. This is useful when receiving or sending contents to remote servers, e.g. Web services, HTTP requests via RCurl.
  • tm.plugin.webmining: Extensible text retrieval framework for news feeds in XML (RSS, ATOM) and JSON formats. Currently, the following feeds are implemented: Google Blog Search, Google Finance, Google News, NYTimes Article Search, Reuters News Feed, Yahoo Finance and Yahoo Inplay.
  • webshot uses PhantomJS to provide screenshots of web pages without a browser. It can be useful for testing websites (such as Shiny applications).

Other Useful Packages and Functions

  • جافا سكريبت : V8 is an R interface to Google’s open source, high performance JavaScript engine. It can wrap Javascript libraries as well as NPM packages. The SpiderMonkey package provides another means of evaluating JavaScript code, creating JavaScript objects and calling JavaScript functions and methods from within R. This can work by embedding the JavaScript engine within an R session or by embedding R in an browser such as Firefox and being able to call R from JavaScript and call back to JavaScript from R. The js package wraps V8 and validates, reformats, optimizes and analyzes JavaScript code.
  • بريد إلكتروني: : mailR is an interface to Apache Commons Email to send emails from within R. sendmailR provides a simple SMTP client. gmailr provides access the Google’s gmail.com RESTful API.
  • Mocking: : webmockr is a library for stubbing and setting expectations on HTTP requests. It is inspired from Rubys webmock. This package only helps mock HTTP requests, and returns nothing when requests match expectations. webmockr integrates with the HTTP packages crul and httr. يرى اختبارات for mocking with returned responses.
  • Testing: : vcr provides an interface to easily cache HTTP requests in R package test suites (but can be used outside of testing use cases as well). vcr relies on webmockr to do the HTTP request mocking. vcr integrates with the HTTP packages crul and httr. httptest provides a framework for testing packages that communicate with HTTP APIs, offering tools for mocking APIs, for recording real API responses for use as mocks, and for making assertions about HTTP requests, all without requiring a live connection to the API server at runtime. httptest only works with httr.
  • متفرقات : webutils contains various functions for developing web applications, including parsers for التطبيق / x-www-form-urlencoded as well as multipart/form-data. mime ( GitHub ) guesses the MIME type for a file from its extension. rsdmx provides tools to read data and metadata documents exchanged through the Statistical Data and Metadata Exchange (SDMX) framework. The package currently focuses on the SDMX XML standard format (SDMX-ML). robotstxt provides functions and classes for parsing robots.txt files and checking access permissions spiderbar does the same. uaparserjs ( GitHub ) uses the javascript “ua-parser” library to parse User-Agent HTTP headers. rapiclient is a client for consuming APIs that follow the Open API format . restfulr models a RESTful service as if it were a nested R list.

Hfrhyu

Is it possible to do 50 km distance without any previous training?

The use of multiple foreign keys on same column in SQL Server

A newer friend of my brother's gave him a load of baseball cards that are supposedly extremely valuable. Is this a scam?

What would happen to a modern skyscraper if it rains micro blackholes?

can i play a electric guitar through a bass amp?

How to add double frame in tcolorbox?

Do I have a twin with permutated remainders?

Replacing matching entries in one column of a file by another column from a different file

Why is 150k or 200k jobs considered good when there's 300k+ births a month?

Can I make popcorn with any corn?

What does "Puller Prush Person" mean?

How is the claim "I am in New York only if I am in America" the same as "If I am in New York, then I am in America?

Why can't I see bouncing of a switch on an oscilloscope?

How is it possible to have an ability score that is less than 3?

What's the output of a record cartridge playing an out-of-speed record

Can a Warlock become Neutral Good?

Does Unearthed Arcana render Favored Souls redundant?

Schoenfled Residua test shows proportionality hazard assumptions holds but Kaplan-Meier plots intersect

Dragon forelimb placement

What's the point of deactivating Num Lock on login screens?

Is it tax fraud for an individual to declare non-taxable revenue as taxable income? (US tax laws)

Arthur Somervell: 1000 Exercises - Meaning of this notation

Adding span tags within wp_list_pages list items

How to increase capacity of osrmRoute in osrm package in R

What are the OSM 'class' cost settings for OSRM?OSRM Routing in Openlayers 3How can I increase limits of OSRM table function?set up transport modes osrmOL3+osrm show route with instructionsTooBig: Increasing OSRM # of coordinatesOSRM - trucks and cars routes should differUsing OSRM with big queries?OSRM doesn't show actual route while plotting from osrm-backend JSON responseFinding Alternative Routes Using OSRM (R)

I had plotted the routes of some locations. The maximum number of locations allowed for routing using the OSRM package in R is 100 coordinate points.

How can I extend beyond this restriction?

It will help if you give some example code that shows it working for 100 points and then failing for 101.

@Spacedman here is the output from R when you try to work with the osrm package in R for any sets of coordinates larger than 100 . . The OSRM server returned an error: Error: The public OSRM API does not allow results with a number of durations higher than 10000. Ask for fewer durations or use your own server and set its --max-table-size option.

Also if you try to use the osrmTrip function in the osrm package, it works for sets of 100 and fails for those above 100. Here is another example trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:100), c("name","long","lat")], overview = "full") - This worked. But when I had this code below, it failed for 101 - trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:101), c("name","long","lat")], overview = "full")

I had plotted the routes of some locations. The maximum number of locations allowed for routing using the OSRM package in R is 100 coordinate points.

How can I extend beyond this restriction?

It will help if you give some example code that shows it working for 100 points and then failing for 101.

@Spacedman here is the output from R when you try to work with the osrm package in R for any sets of coordinates larger than 100 . . The OSRM server returned an error: Error: The public OSRM API does not allow results with a number of durations higher than 10000. Ask for fewer durations or use your own server and set its --max-table-size option.

Also if you try to use the osrmTrip function in the osrm package, it works for sets of 100 and fails for those above 100. Here is another example trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:100), c("name","long","lat")], overview = "full") - This worked. But when I had this code below, it failed for 101 - trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:101), c("name","long","lat")], overview = "full")

I had plotted the routes of some locations. The maximum number of locations allowed for routing using the OSRM package in R is 100 coordinate points.

How can I extend beyond this restriction?

I had plotted the routes of some locations. The maximum number of locations allowed for routing using the OSRM package in R is 100 coordinate points.

How can I extend beyond this restriction?

It will help if you give some example code that shows it working for 100 points and then failing for 101.

@Spacedman here is the output from R when you try to work with the osrm package in R for any sets of coordinates larger than 100 . . The OSRM server returned an error: Error: The public OSRM API does not allow results with a number of durations higher than 10000. Ask for fewer durations or use your own server and set its --max-table-size option.

Also if you try to use the osrmTrip function in the osrm package, it works for sets of 100 and fails for those above 100. Here is another example trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:100), c("name","long","lat")], overview = "full") - This worked. But when I had this code below, it failed for 101 - trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:101), c("name","long","lat")], overview = "full")

It will help if you give some example code that shows it working for 100 points and then failing for 101.

@Spacedman here is the output from R when you try to work with the osrm package in R for any sets of coordinates larger than 100 . . The OSRM server returned an error: Error: The public OSRM API does not allow results with a number of durations higher than 10000. Ask for fewer durations or use your own server and set its --max-table-size option.

Also if you try to use the osrmTrip function in the osrm package, it works for sets of 100 and fails for those above 100. Here is another example trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:100), c("name","long","lat")], overview = "full") - This worked. But when I had this code below, it failed for 101 - trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:101), c("name","long","lat")], overview = "full")

It will help if you give some example code that shows it working for 100 points and then failing for 101.

It will help if you give some example code that shows it working for 100 points and then failing for 101.

@Spacedman here is the output from R when you try to work with the osrm package in R for any sets of coordinates larger than 100 . . The OSRM server returned an error: Error: The public OSRM API does not allow results with a number of durations higher than 10000. Ask for fewer durations or use your own server and set its --max-table-size option.

@Spacedman here is the output from R when you try to work with the osrm package in R for any sets of coordinates larger than 100 . . The OSRM server returned an error: Error: The public OSRM API does not allow results with a number of durations higher than 10000. Ask for fewer durations or use your own server and set its --max-table-size option.

Also if you try to use the osrmTrip function in the osrm package, it works for sets of 100 and fails for those above 100. Here is another example trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:100), c("name","long","lat")], overview = "full") - This worked. But when I had this code below, it failed for 101 - trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:101), c("name","long","lat")], overview = "full")

Also if you try to use the osrmTrip function in the osrm package, it works for sets of 100 and fails for those above 100. Here is another example trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:100), c("name","long","lat")], overview = "full") - This worked. But when I had this code below, it failed for 101 - trips <- osrmTrip(loc = day13.crit_spatial_df[c(79,1:101), c("name","long","lat")], overview = "full")