Skip to content
Snippets Groups Projects
test_html.py 1.41 KiB
Newer Older
s47700's avatar
s47700 committed
import requests
from lxml import html

# URL der Seite, die den Button enthält
url = "http://octopi.local/?#control"

# Die HTML-Seite herunterladen
response = requests.get(url, verify=True)
html_content = response.text

# HTML-Parsing
tree = html.fromstring(html_content)

# XPath für den Cancel-Button
cancel_button_xpath = '//*[@id="job_cancel"]'

# Button-Element auswählen und direkt in der Bedingung überprüfen
cancel_button = tree.xpath(cancel_button_xpath)
if cancel_button:
    # Extrahiere den Wert des "onclick" -Attributs, um den Link zu erhalten, auf den geklickt werden soll
    onclick_value = cancel_button[0].attrib.get("onclick")
    if onclick_value:
        # Extrahiere den Link aus dem "onclick" -Attribut
        link_to_click = onclick_value.split("window.location.href='")[1].split("'")[0]
        # Simuliere einen Klick, indem du eine Anfrage an den Link sendest
        simulated_click_response = requests.get(link_to_click, verify=True)
        # Überprüfe die Antwort, um sicherzustellen, dass der Klick erfolgreich war
        if simulated_click_response.status_code == 200:
            print("Klick auf Cancel-Button simuliert.")
        else:
            print("Fehler beim Klicken auf den Cancel-Button. HTTP-Statuscode:", simulated_click_response.status_code)
    else:
        print("Cancel-Button gefunden, aber kein 'onclick' Attribut vorhanden.")
else:
    print("Cancel-Button nicht gefunden.")