Получить html table python selenium

D
На сайте с 28.06.2008
Offline
1104
232

Питон не знаю, нашел пример кода в сети. В итоге удалось запустить селениум и получить данные нужной таблицы, но данные в виде текста, а нужен весь html

Что нужно исправить в коде?

    table = driver.find_elements_by_css_selector("tbody.playerRankingBody")
    textToWrite = ""

    for row in table:
        textToWrite += (row.text)
       
    f = open("table" + prices[i].replace(" ","").replace("$","").replace("/","-") + ".txt", "w")

    f.write(textToWrite)
    f.close()


S4
На сайте с 23.05.2021
Offline
6
#1
у Вас в table лежит объект со всеми <tr class="playerRankingBody">  или <td class="

playerRankingBody">? 
или это tbody класса .playerRankingBody?

Короче есть два варианта 

driver.find_element_by_css_selector
driver.find_elements_by_css_selector

первый вернет объект, по простому скажем типа selenium.driver с тегом найденным по селектору - первый встреченый ну и всем его содержимым - наследниками то бишь. Его свойство .text извлекает содержимое тега.
driver.page_source содержит сырой html

Второй вернет последовательность таких объектов из числа всех встреченных в документе. (как у вас в коде).

.text - это свойство содержащее значение из тела тега. Ваш код суммирует в одну строчку все содержание тегов класса .playerRankingBody что как то странно.

element_by_css_selector("tbody")
И в нем уе внутрях искть find по <td> собственно данные
W1
На сайте с 22.01.2021
Offline
305
#2
Dram :

Питон не знаю, нашел пример кода в сети. В итоге удалось запустить селениум и получить данные нужной таблицы, но данные в виде текста, а нужен весь html

Тоже не знаю питон.
Но попробовал бы вот так:

    table = driver.find_elements_by_css_selector("tbody.playerRankingBody")
    textToWrite = table.get_attribute("outerHTML")
       
    f = open("table" + prices[i].replace(" ","").replace("$","").replace("/","-") + ".txt", "w")

    f.write(textToWrite)
    f.close()
Мой форум - https://webinfo.guru –Там я всегда на связи
D
На сайте с 28.06.2008
Offline
1104
#3
Спс, это помогло - driver.page_source содержит сырой html
W1
На сайте с 22.01.2021
Offline
305
#4
Dram #:
driver.page_source содержит сырой html

Да, но всей страницы, а не "данные нужной таблицы", как было написано в стартпосте.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий