Веб-таблица очистки, чтобы преуспеть, используя селен, питон

Я пытаюсь поместить эту информацию в файл Excel, но не могу понять, как использовать для этого import csv. Я просмотрел другие сообщения в качестве ссылки, но я не могу применить их к тому, что я делаю. Я новичок в селене. Спасибо.

from selenium.webdriver.support.ui import Select
from selenium.webdriver.common.keys import Keys
import csv

driver = webdriver.Chrome()

driver.get("https://web3.ncaa.org/hsportal/exec/hsAction")

state_drop = driver.find_element_by_id("state")
state = Select(state_drop)
state.select_by_visible_text("New Jersey")

driver.find_element_by_id("city").send_keys("Galloway")
driver.find_element_by_id("name").send_keys("Absegami High School")
driver.find_element_by_class_name("forms_input_button").send_keys(Keys.RETURN)
driver.find_element_by_id("hsSelectRadio_1").click()

#scraping the caption of the tables
all_sub_head = driver.find_elements_by_class_name("tableSubHeaderForWsrDetail") 

#scraping all the headers of the tables
all_headers = driver.find_elements_by_class_name("tableHeaderForWsrDetail")

#filtering the desired headers
required_headers = all_headers[5:]

#scraoing all the table data
all_contents = driver.find_elements_by_class_name("tdTinyFontForWsrDetail")

#filtering the desired tabla data
required_contents = all_contents[45:]

person J. Doe    schedule 25.07.2020    source источник


Ответы (1)


all_contents — это список объектов.

Понимание списка — это быстрый и распространенный способ собрать значения свойств объектов в другой список.

Добавьте эти строки в конец вашего скрипта

lstdata = [e.text for e in required_contents]

with open('out.csv', 'w', newline='') as csvfile:
    writer = csv.writer(csvfile)
    writer.writerow(lstdata)

Обратите внимание, что в ваших данных есть новые строки, поэтому они будут отображаться в файле csv (столбец адреса школы).

person Mike67    schedule 25.07.2020