Ich habe ein Skript geschrieben, um Dateien auf eine Website in Watir hochzuladen. Es ist ein Memorandum, weil ich das Problem gelöst habe, dass es schwierig war, Informationen in der alten Umgebung zu finden.
CentOS Linux 7 Ruby 2.0.0p648 Technische Daten Juwel ist Watir Der Browser verwendet Firefox, aber auch andere Browser wie Chrome
Ich möchte eine Datei auf eine Website hochladen, indem ich mit Watir ein automatisches Skript starte. Drücken Sie auf dem Upload-Bildschirm die Schaltfläche Datei auswählen. Wenn der Dateiauswahlbildschirm angezeigt wird, wählen Sie eine Datei aus und laden Sie sie hoch.
Das Verhalten beim Auswählen einer Datei auf dem Upload-Bildschirm funktioniert nicht. Wenn der Bildschirm zur Auswahl der Standarddateien des Betriebssystems geöffnet wird, erreicht die Ausführung des Skripts nicht, ob es außerhalb des Browsers ausgeführt wird.
browser.execute_script("
document.dispatchEvent( new KeyboardEvent( 'keydown', { keyCode: 86 , ctrlKey: true , key: 'V' }) );
")
(Referenz: https://ameblo.jp/personwritep/entry-12456996738.html) Ich habe solche Dinge wie versucht, aber es werden keine Vorgänge wie das Lesen der Zieldatei ausgeführt.
Der Bildschirm zum Hochladen von Dateien befindet sich unten und Sie können auf die Schaltfläche "Datei auswählen" klicken.
Anschließend wird der folgende Bildschirm zur Auswahl von Standarddateien für das Betriebssystem angezeigt, in dem Dateien von dort hochgeladen werden können.
Wenn Sie von Hand arbeiten, können Sie die Datei auswählen, nachdem Sie auf die Schaltfläche "Datei auswählen" geklickt haben, oder Sie können die Datei durch Ziehen und Ablegen hochladen.
Als Ergebnis ist es geschafft.
$browser.file_field(:id, //).set("filepath\/...\/file.png ")
https://stackoverflow.com/questions/15163816/automating-a-file-upload-with-watir-in-chrome-on-osx https://www.rubydoc.info/gems/watir/1.8.1/Watir%2FContainer:file_field
Kein Watir.
Recommended Posts