2016-01-07 30 views
0

我是一個新手與HtmlUnit ..我想登錄https://trash-mail.com/posteingang/HtmlUnit getform()表格找不到

我的代碼:

public static void main(String[] args) throws FailingHttpStatusCodeException, MalformedURLException, IOException { 

     WebClient webClient = new WebClient(BrowserVersion.CHROME); 

     HtmlPage page1 = webClient.getPage("https://www.trash-mail.com/posteingang/"); 

     HtmlForm form = page1.getFormByName("inbox-form"); 

我得到以下錯誤:

runtimeError: message=[An invalid or illegal selector was specified (selector: 'select option:selected' error: Invalid selector: select option:selected).] sourceName=[ https://www.trash-mail.com/js/jquery-1.9.1.min.js.pagespeed.ce.OXdUuknp4M.js] line=[4] lineSource=[null] lineOffset=[0] Exception in thread "main" com.gargoylesoftware.htmlunit.ElementNotFoundException: elementName=[form] attributeName=[name] attributeValue=[inbox-form] at com.gargoylesoftware.htmlunit.html.HtmlPage.getFormByName(HtmlPage.java:647)

不要ü有任何想法如何,這可能會工作嗎?

問候, MaddinCoy

它是合法的,做這個網站的這個東西。

回答

0

在該HTML頁面上,我沒有看到任何帶有該名稱的表單 - 收件箱形式收件箱形式是形式不是名稱的id

<form id="inbox-form" action="#" method="post" enctype="multipart/form-data" class="form-horizontal" autocomplete="off"> 

要麼添加name屬性,以形成或使用的getElementById方法之一。

本頁面只有一個表單,以便你可以試試這個語法太HtmlForm form = page.getForms().get(0);

編輯 - 我試圖運行你的代碼,就會發生問題在HtmlPage page = webClient.getPage("https://www.trash-mail.com/posteingang/");

錯誤信息 - SEVERE: runtimeError: message=[An invalid or illegal selector was specified (selector: 'select option:selected' error: Invalid selector: select option:selected).] sourceName=[https://www.trash-mail.com/js/jquery-1.9.1.min.js.pagespeed.ce.OXdUuknp4M.js] line=[4] lineSource=[null] lineOffset=[0]

這似乎像HtmlUnit的Jquery支持問題或者該腳本或用法中的一些錯誤,htmlUnitbugs

我的建議 - 1.不要拋出主要方法的異常,儘量處理這些異常2.調試你的每一行代碼

看起來我們可以做很多,因爲你無法更改該頁面。

+0

感謝您的回覆!如果我使用'final HtmlForm form =(HtmlForm)page.getElementById(「inbox-form」);'我得到一個錯誤...請給我一個例子如何找到表單並輸入這種形式的東西?謝謝... – MaddinCoy

+0

什麼錯誤?先通過添加名稱屬性來嘗試您的舊代碼。 –

+0

'runtimeError:message = [指定了一個無效或非法的選擇器(選擇器:'選擇選項:選擇'錯誤:無效的選擇器:選擇選項:選中)。] sourceName = [https://www.trash-mail.com/ js/jquery-1.9.1.min.js.pagespeed.ce.OXdUuknp4M.js] line = [4] lineSource = [null] lineOffset = [0]' 該網頁不是我的項目無法更改網絡服務器上的代碼 – MaddinCoy