アップロード操作は2例に分けられます。
図1に示すように、入力タグのアップロード
入力パスを直接入力することができた場合は、直接send_keys入力パスを呼び出し、フロント業務と同様の要素には、あまりにも多く、ここでそれらを繰り返すありません。
図2に示すように、非入力タグアップロード
非入力タグのアップロード、あなたは、サードパーティ製のツールを使用する必要があります。
ここでは、ダイアログボックスのハンドルを識別するために、サードパーティ製のライブラリpywin32 Pythonライブラリを使用して、操作をアップロード
まず、サードパーティのライブラリをインストールしますpywin32をインストールPIP
ポジショニングを支援するwinspyでは、winspyダウンロード:https://sourceforge.net/projects/winspyex/
異なる方法で配置絶対位置winspyツールの使用、およびセレン元素
援助winspyツールの対応する要素のパスを配置することによって、それをアップロードpywin32ライブラリによって達成することができます!
1、filePathには、ファイルをアップロードした絶対パスです
2は、お使いのブラウザは他のブラウザでは、あなたが名前の左上隅のポップアップウィンドウをアップロードするかを見る場合、Googleはそう、気にしないでくださいある場合は、内部の「」=他のタイトルに書かれています。
Windowsがアップロードする要素の位置決めウィンドウに遭遇した場合3、あなたは直接このメソッドを呼び出すことができますアップロード(C:\ファイルアップロード.TXT)
例えば、FirefoxブラウザとGoogleは、そのタイトル=「ファイルのアップロード」と異なっています
インポートwin32guiは インポートwin32con DEFアップロード(filePathに、browser_type = 「クローム」): 「」 ' ファイルアップロードモジュールpywin32によって実装操作 のparamファイルパス:ファイルの絶対パス :のparam browser_type:ブラウザの種類(デフォルトクローム) :リターン: 「」 ' IF browser_type == 『クローム』: タイトル = 『オープン』 他: タイトル = 『』 #は、ここでブラウザの種類に応じて変更することが #見つける要素 #ウィンドウ『32770』、 『オープン』 ダイアログ= win32gui.FindWindow(" #32770 " 、タイトル) #は、下方伝播 ComboBoxEx32 = win32gui.FindWindowEx(ダイアログ、0、" ComboBoxEx32 "、なし) #2 コンボボックスは= win32gui.FindWindowEx(ComboBoxEx32、0、" コンボボックス"、なし) #3 位編集ボタン 編集= win32gui.FindWindowEx(コンボボックス、0、' 編集'、なし) #4 #オープンボタン ボタン= win32gui.FindWindowEx(ダイアログ、0、' ボタン'、" オープン(O&)") #二 #ファイルへの絶対パス、「開く」ボタンをクリックし win32gui.SendMessage(編集、win32con.WM_SETTEXT、なし、filePathに) #をファイルパス送信 win32gui.SendMessage(ダイアログ、win32con.WM_COMMAND、1、ボタン) #を開くためにクリックしてプッシュボタン