سؤال

قد يكون هذا السؤال محددًا بعض الشيء ، لكن برنامج اختبار IM يستخدم XPath للعثور على البيانات التي أحتاجها في HTML. هذه القطعة من HTML (الموجودة هنا) هي ما أحاول تحليله.

<table border="0" cellspacing="0" cellpadding="0">
    <tr>
        <td class="textSm" align="right">1.&nbsp;</td> <!-- Location of the number is here -->
        <td align="left" nowrap>
            <a href="/stats/individual_stats_player.jsp?c_id=sf&playerID=467055" class="textSm">P Sandoval</a> <!-- Player location is here of the number is here -->
        </td>
    </tr>
</table>

هدفي هو العثور على اسم الشخص باستخدام الرقم الذي يتوافق معه للعثور عليه. هذا يتطلب مني العثور على عقدة بواسطة النص المحدد الموجود في "td class="textSm" align="right">1. </td>"ثم ابحث عن شقيق تلك العقدة"<td align="left" nowrap>"ثم ابحث عن طفل ذلك الأخوة"<a href="/stats/individual_stats_player.jsp?c_id=sf&playerID=467055" class="textSm">P Sandoval</a>"للحصول على النتيجة المرجوة. كنت أتساءل عن نوع الاستعلام الذي يمكنني استخدامه للعثور على هذا. أي مساعدة موضع تقدير كبير.

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

المحلول

يستخدم:

table/tr/td[starts-with(., '1.')]/following-sibling::td/a

هذا يفترض أن السياق (العقدة الحالية) التي يتم تقييم تعبير XPath أعلاه ، هو الوالد table.

نصائح أخرى

//tr[td = "1"]/td[2]/a

لجميع TRS التي لديها TD تساوي "1" ، أعط من الطفل الثاني td العنصر.

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