2016-03-06 32 views
1

我想填寫一個網站形式(compareraja.in)來搜索和比較使用java的手機。我目前正在使用jaunt庫,但我不知道如何填充自動完成文本字段,我想要的是從自動完成列表中選擇特定項目,然後將某些首字母應用於文本字段。用jsoup或jaunt或者htmlunit或者任何其他庫可能嗎?如何網絡刮自動填充textfield

如果是的話,哪個是最好,最簡單的選擇?又如何做呢?

Image of the autocompleting textfield

回答

1

我的線索是,首先你必須找回你已經應用了某些字母后出現的整個自動完成列表。如果您在e中打開網頁。 G。 Chrome,轉到開發工具F12,網絡標籤,然後你會看到,每次鍵入文本字段字母,相應X ML ^h TTP [R eQUEST的記錄在列表中。

例如,我輸入了 「HTC」:

compare products autocompletion

在網絡選項卡最後一個XHR頭部分包含所有必要的查詢參數:

request

並且響應部分顯示接收的數據,實際顯示在該自動完成列表中:

response

所以,你可以只讓GET XHR到URL http://www.compareraja.in/autocompletedata.ashx?q=htc+&c=mobiles&limit=150(你甚至可以點擊此鏈接或將其粘貼到瀏覽器的地址線來測試),你的URL編碼的首字母應放置,而不是htc+。它工作正常,沒有timestamp參數對我來說。

之後,很容易解析響應,將文本拆分爲\n;字符,然後用選定的項目填充文本字段。

+0

Thanx很多omegastripes。 –