最近一直用htmlunit工具來抓資料,完成各類目标網站自動登入抓取各類資料。過程中碰到了各類問題,自己慢慢摸索,但最終還是一一的解決。後面會貼一些代碼上來,不至于讓文章看看起空蕩蕩的。
附上一些總結:
1.抓取資料主要兩種方案:一、模拟浏覽器操作 二、抓包,個人在采取兩種方案時候會交換使用
2.對于有驗證碼的,個人處理辦法:抓取驗證碼到swing面闆,手動輸入,後寫個窗體定時請求成功後的登入位址,保持session的存活。驗證碼識别成本高。
3.對于js、ajax處理界面時候,線程暫停幾秒是需要的(根據實際情況而定);擷取iframe資料通過getEnclosedPage()方法;對于填充資料網上一般用setValueAttribute(),在碰到一個項目中用的是angularjs,此方法失效采用type()方法;
4.自己本身還不斷學習中,用好這個htmlunit需要多閱讀文檔。這方面國内資料少,我會看stackoverflow裡面關于htmlunit的提問,很多自己碰到的問題其實老外都已經碰到了。
htmlunit最新下載下傳位址:http://sourceforge.net/projects/htmlunit/?source=directory
stackoverflow關于htmlunit的提問:http://stackoverflow.com/search?q=htmlunit