Получить все названия div id



  • В коде есть много div id, как
    <div id="g_4_SnMbVFyF" title="Click for match detail!"
    <div id="g_4_nLIifLZ8" title="Click for match detail!"
    Подскажите плиз, как получить с помощью xpath все их названия, g_4_SnMbVFyF, g_4_nLIifLZ8 и тд?
    //*[@id='g'] таким запросом не получается получить



  • //div/@id
    

    В примерах для xpath есть практически аналогичный случай. но для атрибута src тега img



  • @GameBot то, что нужно, спасибо!!



  • @GameBot а если один div и в нем идет div class, потом много div id, потом опять div class и много div id, как получить все div class и потом идущие за ним div id?

    <div class="sportName soccer">
    <div class="event__header top">
    <div id="g_1_vg4gJ0L2" title="Click for match detail!" class="event__match event__match--twoLine">
    <div id="g_1_vg4323L2" title="Click for match detail!" class="event__match event__match--twoLine">



  • Вначале получить все xml для div с нужным классом. Далее в полученных xml получить id.

    Второй вариант: получить код элемента, содержащего все нужные div и делать парсинг id.

    Вопрос лишь в том, зачем вам нужны эти id?



  • @GameBot said in Получить все названия div id:

    Вначале получить все xml для div с нужным классом. Далее в полученных xml получить id.

    Таким вариантов не получится, можно получить один div (массив <div class="sportName soccer">) где есть нужные class и id, но если потом получать из этого массива все class, то в них не будет id, id идут такими же отдельными div как и class

    Второй вариант: получить код элемента, содержащего все нужные div и делать парсинг id.

    Да вариант, как его реализовать? получаем код элемента, далее через foreach проверять каждый div, если у него нужный Class, то надо получить все следующие div у которых есть id, если следующий div содержит class, то для него также получить id и тд

    Вопрос лишь в том, зачем вам нужны эти id?

    В class содержится название спортивного чемпионата, в Id ссылка на матч (например Англия премьер лига в class, далее идут 5-7 id со ссылками на матчи этого чемпионата, но id идут не внутри этого Class, а просто отдельным div после этого class, вот в этом и была сложность), как получить ссылки на все матчи нужного чемпионата, сейчас получаются все ссылки, открывается каждый матч и уже в нем считывается название чемпионата, если оно подходит, то собираются данные, если нет, то открывается след матч и тд.

    https://www.flashscore.com/

    Например название чемпионата Англия премьер лига (назание в class), надо получить все ссылки на матчи этого чемпионата (они в id), далее получить название след чемпионата если оно подходит и нам надо, то получить ссылки на матчи и тд



  • Проблема что div с id не вложены в div с классом.
    Поэтому скорее всего подойдет только цикл по всем div в class="sportName soccer"
    Если div содержит class, то парсим чемпионат, если id, то матч

    Возможно кто-то подскажет вариант получше



  • @GameBot таким способом все получилось, спасибо! наверное был единственный верный вариант


Log in to reply