Webseite Überwachung API

Adrachin:

Ich möchte eine Aktion hinzufügen die den Stand einer Webseite liest und gegebenenfalls Änderungen erkennt. Wie gehe ich vor?

LiquidGPT:

Um eine Aktion zu erstellen, die den Zustand einer Webseite liest und Änderungen erkennt, kannst du einen Web-Scraping-Dienst oder eine API nutzen, die die Webseite regelmäßig abruft und den Inhalt überprüft. Ich werde ein Beispiel für eine OpenAPI 3.0 Spezifikation erstellen, die eine solche Funktionalität beschreibt. In diesem Fall werde ich davon ausgehen, dass es eine API gibt, die den aktuellen Inhalt einer Webseite zurückgibt und Änderungen erkennt.

Hier ist eine Beispiel-OpenAPI 3.0 Spezifikation:

openapi: 3.0.0
info:
  title: Website Monitoring API
  description: API zur Überwachung von Webseiten und Erkennung von Änderungen.
  version: 1.0.0
servers:
  - url: http://api.webmonitoring.com/v1
    description: Hauptserver
paths:
  /websites:
    get:
      operationId: getWebsites
      summary: Gibt eine Liste der überwachten Webseiten zurück.
      responses:
        '200':
          description: Eine Liste der überwachten Webseiten.
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    url:
                      type: string
                    lastChecked:
                      type: string
                      format: date-time
                    lastChanged:
                      type: string
                      format: date-time
  /websites/{url}:
    get:
      operationId: getWebsiteStatus
      summary: Gibt den aktuellen Status einer Webseite zurück.
      parameters:
        - name: url
          in: path
          required: true
          description: Die URL der zu überprüfenden Webseite.
          schema:
            type: string
      responses:
        '200':
          description: Der aktuelle Status der Webseite.
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
                  contentHash:
                    type: string
                  lastChecked:
                    type: string
                    format: date-time
                  lastChanged:
                    type: string
                    format: date-time
        '404':
          description: Webseite nicht gefunden.
    post:
      operationId: addWebsite
      summary: Fügt eine neue Webseite zur Überwachung hinzu.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  description: Die URL der Webseite, die überwacht werden soll.
      responses:
        '201':
          description: Webseite erfolgreich hinzugefügt.
        '400':
          description: Ungültige Anforderung.
  /websites/{url}/changes:
    get:
      operationId: getWebsiteChanges
      summary: Gibt die Änderungen der Webseite seit dem letzten Check zurück.
      parameters:
        - name: url
          in: path
          required: true
          description: Die URL der Webseite.
          schema:
            type: string
      responses:
        '200':
          description: Änderungen der Webseite seit dem letzten Check.
          content:
            application/json:
              schema:
                type: object
                properties:
                  url:
                    type: string
                  changes:
                    type: array
                    items:
                      type: object
                      properties:
                        timestamp:
                          type: string
                          format: date-time
                        changeDescription:
                          type: string
        '404':
          description: Webseite nicht gefunden.

Diese OpenAPI-Spezifikation beschreibt eine API zur Überwachung von Webseiten. Die wichtigsten Endpunkte sind:

Mit dieser API kannst du Webseiten überwachen und Änderungen erkennen. Um eine solche Funktionalität zu implementieren, benötigst du einen Dienst oder ein Skript, das regelmäßig den Inhalt der Webseite überprüft und die API entsprechend aktualisiert.