Проверьте, доступен ли временной интервал (введите бесплатно)Python

Программы на Python
Ответить
Anonymous
 Проверьте, доступен ли временной интервал (введите бесплатно)

Сообщение Anonymous »


Изображение
Здесь HTML-код, который я хотел бы выбрать временной интервал (в 21:00), который является бесплатным, в приведенном ниже коде. Доступны только Padel Buiten 2 и Padel Buiten 3. Я предпочитаю забронировать PAdel Buiten 3 в 21:00. Мой вопрос: как я могу использовать Python, чтобы определить, пуст ли временной интервал или нет. Правильный порядок должен быть таким: Padel Buiten 3, Padel Buiten 2, Padel Buiten 4, Padel Buiten 6, Padel Buiten 7. Является ли PAdel Buiten 3 бесплатным? Тогда ему нужно сделать бронирование, в противном случае PAdel Buiten 2 будет бесплатным.


21:00 Gereserveerd
21:00
21:00
21:00 Gereserveerd
Padel lessen
21:00 Gereserveerd
21:00 Gereserveerd
Reserveren via Playtomic


Новая информация:
Изображение
Как видите (для теста я использую 18:00), но корты 4 и 6 доступны. Но я все равно получаю сообщение о том, что суды недоступны.
Не могли бы вы взглянуть на этот код? Я манекен Python :-) и очень благодарен за вашу помощь!!
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
import sys

# Bepaal Webdriver
driver = webdriver.Chrome()

# Open de website
driver.get("https://bent.baanreserveren.nl")

# Tijd om scherm goed te stellen
time.sleep(1)

# START BOEKING 21:00 UUR
# Vul Gebruikersnaam in
driver.find_element(By.NAME, "username").send_keys("kbolk")

# Vul Wachtwoord in
driver.find_element(By.NAME, "password").send_keys("Test@123")

# Klik op Inloggen
driver.find_element(By.CSS_SELECTOR, ".form-submit3 > .button3").click()

# Juiste dag (3x klikken)
for _ in range(3):
element = driver.find_element(By.CSS_SELECTOR, ".matrix-date-nav:nth-child(3)")
element.click()
time.sleep(1)

# Selecteer Padel Buiten uit Dropdown lijst
dropdown_element = driver.find_element(By.ID, "matrix-sport")
dropdown_element.click()
element = dropdown_element.find_element(By.XPATH, "//option[. = 'Padel Buiten']")
element.click()
dropdown_element = driver.find_element(By.ID, "matrix-sport")
dropdown_element.click()
time.sleep(1)

court_preferences = ['3', '2', '4', '6', '7']
booked = False
for court in court_preferences:
available = driver.find_elements(By.XPATH, "//td[@type='free'][@title='Padel Buiten "+ court +"'][./div[text()='18:00']]")
if available:
baan_boeking = court_preferences #here I would like to have the court number which is free
print (baan_boeking)
booked = True

if not booked:
print("No available courts found")
sys.exit() #no courts availabe? No action needed, end of script

#Here I would like to add the next steps if booked if true.
print ("Execute next steps")


Подробнее здесь: https://stackoverflow.com/questions/792 ... -type-free
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»