2016-02-11 87 views
0

我知道這個問題聽起來很可疑,但我處於一個奇怪的情況,我已經控制了一個項目,但是構建網站的原始供應商保留了服務器和服務器端代碼的所有權。從Python提交基於Silverlight的表單

我已經成功地通過Selenium腳本化了很多與網站的交互,但我需要的腳本之一是通過Silverlight表單提交文件。據我所知,你不能直接與Python或Selenium的Silverlight進行交互,但是看起來像Silverlight只是用來獲取文件位置和顯示加載欄的源代碼,而實際的表單提交是通過發佈到ASP服務器端腳本完成。但它有幾個隱藏的驗證字段。

所以我很想象一個路徑,我用Selenium導航到這個頁面,然後解析該頁面的驗證值,然後將這些值和我想要上傳的數據提交給表單。

這種方法是否可行?我在哪裏可以找到類似這樣的信息和涉及的困難?

+0

它當然是可行的。使用Python + JavaScript + Selenium你幾乎擁有完整的堆棧,所以任何web/HTTP問題都應該是可以解決的。這通常只是一個你需要繞過多少UI的問題。需要一個URL或某些來源才能提供具體的建議。 –

+0

這是一個安全的網站,所以我不能給一個URL。我會看看是否有某種方式可以在這裏提供可用的源代碼,可能在週末。 – TBridges42

回答

1

Silverlight可以通過Windows輔助功能界面實現自動化。這個範圍對於一個stackoverflow帖子來說太大了,但是我建議你看看這個:https://msdn.microsoft.com/library/ms727247(v=vs.100).aspx

你可以鑽取使用UI Spy來深入控制ID,然後使用Python的COM互操作來調用UI自動化蜜蜂。

+0

因此,最終我能夠與承包商進行談判,以獲得更容易訪問的界面,但這絕對看起來很有用,並且可能最終會出現在我的代碼的其他部分。 – TBridges42