27-12-15, 02:40 AM
(آخر تعديل لهذه المشاركة : 27-12-15, 02:42 AM {2} بواسطة الشاكي لله.)
^
الxpath لايمكن ان يتشابه معه عنصر اخر مهما حصل
حتى لو كانت هناك جداول مشابهة لبعض لايمكن ان يحصل تشابه في الxpath
الصيغة التي تستعملها لاتسمى xpath اقصد هذه ("//table[@border='1']")
انما انت باستعمالها كانك تقول للدالة ، ابحثي عن الnode المسمى table الذي يحتوي على المواصفة border = 1
وبالفعل ذلك صحيح ان استخدام صيغة البحث باستعمال الnode والمواصفة فاشلة ،
حيث كما قلت اذا تشابه اكثر من عنصر في نفس اسم النود وفي نفس قيمة المواصفة ، طبعا هذا سيحصل لو كان في الصفحة اكثر من جدول ،بالتالي سيحصل تضارب في جلب القيم.
لذلك الحل هو استخدام الxpath وهو string فريد خاص لكل عنصر في الhtml وهو لايتكرر
مثال ل xpath الtable في مثالك ، سيكون :
/html[1]/body[1]/p[4]/table[1]
الxpath لايمكن ان يتشابه معه عنصر اخر مهما حصل
حتى لو كانت هناك جداول مشابهة لبعض لايمكن ان يحصل تشابه في الxpath
الصيغة التي تستعملها لاتسمى xpath اقصد هذه ("//table[@border='1']")
انما انت باستعمالها كانك تقول للدالة ، ابحثي عن الnode المسمى table الذي يحتوي على المواصفة border = 1
وبالفعل ذلك صحيح ان استخدام صيغة البحث باستعمال الnode والمواصفة فاشلة ،
حيث كما قلت اذا تشابه اكثر من عنصر في نفس اسم النود وفي نفس قيمة المواصفة ، طبعا هذا سيحصل لو كان في الصفحة اكثر من جدول ،بالتالي سيحصل تضارب في جلب القيم.
لذلك الحل هو استخدام الxpath وهو string فريد خاص لكل عنصر في الhtml وهو لايتكرر
مثال ل xpath الtable في مثالك ، سيكون :
/html[1]/body[1]/p[4]/table[1]

