2017-12-16 2 views
1

Der folgende HTML-Code ist für das Hochladen von Datei verantwortlich und element.send_keys(absfilepath) funktioniert nicht. nach dem Senden von click zu Element öffnet es das Dateiupload-Fenster im os (Linux in meinem Fall) und ich konnte nicht mit ihm interagieren. Getestet mit Chrome, Firefox, PhantomJS kein Ergebnis mit irgendwelchen von ihnen.send_keys funktioniert nicht selen python

<div class="col-sm-9"> 
    <input value="" class="select-file-button" type="button"> 
</div> 

die an iQeury.ajaxFileUpload.js angehängt ist. hier ist das Ergebnis nach Datei manuell hochgeladen:

<div class="col-sm-9"> 
    <div class="ajax-fileupload" style="background-image: url(&quot;/Profishop/Temp/70a569b6747041bc88da3b74871afff7/Screenshot-2017-12-12%20Telegram%20Web.png&quot;);"><input type="button" class="delete-button"></div> 
</div> 

auch im Quellcode ich das input type="file" Element gefunden, aber es wird von einem Skript und es nicht zugänglich generierte Seite genannt.

<div class="col-sm-9"> 
    <input type="file" class="afuProductImage" /> 
</div> 

und das ist das Skript

<script type="text/javascript"> 
//<![CDATA[ 
$(document).ready(function() { 
       $(".afuProductImage").ajaxFileUpload({ 
       uploadHandler: "/aja/upload?id=70a569b6747041bc88da3b74871afff7&op=upload", 
       deleteHandler: "/ajax/upload?op=deleteid=70a569b6747041bc88da3b74871afff7&name=", 
       filePath: null, 
       containerAttrs: { 
       class: "ajax-fileupload" 
           }, 
       buttonAttrs: { 
       value: "" 
       }, 
       }); 
       });//]]> 
</script> 

Gibt es eine Möglichkeit, die Datei mit Selen zu laden, indem es ein Javascript-Befehl gesendet wird?

+0

'Ich konnte nicht damit interagieren' Was hast du probiert? –

+0

tatsächlich konnte keine Möglichkeit finden, auf die Select-Datei öffnen Fenster API zuzugreifen, ich keine Ahnung, wie es geht. Es gibt einige Anleitungen für Windows OS, aber nichts auf Linux – King110

Antwort

0

Die Idee ist, nicht auf das Element um klicken, um zu vermeiden, dass das "File Upload" Fenster geöffnet.

Suchen Sie das input Element mit type="file" und senden Sie einfach die Schlüssel mit dem absoluten Pfad zu der Datei, die Sie hochladen möchten.

+0

gibt es 'input'-Element mit' type = "file" 'in Quellcode, aber wenn ich versuche, darauf zuzugreifen, gibt der Fehler an, dass Elementklasse nicht verfügbar ist. Es gibt ein 'Skript', das diese Eingabe aufruft. – King110

+0

@ King110 für Anfänger, können Sie versuchen, das Element sichtbar machen - z. https://stackoverflow.com/a/25725701/771848. Gibt es eine Möglichkeit, das Problem auch für uns reproduzierbar zu machen? Kann die URL zu der Webseite, auf der du das tust, geteilt werden? .. danke. – alecxe

Verwandte Themen