HtmlUnit 網絡爬蟲 菜鳥的學習筆記(一)

  1. 什麼是HtmlUnithtml

    HtmlUnit是一個開源的瀏覽器模擬工具,能夠方便咱們模擬瀏覽器的行爲,例如打開網頁,提交表單等,這樣咱們能夠用他來爬網頁java

    官網下載:http://htmlunit.sourceforge.net/ web

    java API:http://htmlunit.sourceforge.net/apidocs/index.html api

  2. 怎麼用HtmlUnit瀏覽器

    (個人IED是idea,用的maven工程)maven

    在pom文件裏導入HtmlUnit的依賴包ide

    <dependency>
        <groupId>net.sourceforge.htmlunit</groupId>
        <artifactId>htmlunit</artifactId>
        <version>2.18</version>
    </dependency>

        主要語法仍是比較簡單的
工具

        下面是一個小demo網站

WebClient webClient = new WebClient();
HtmlPage htmlPage = null;
try
{
    htmlPage = webClient.getPage("http://sexy.faceks.com/");
}catch (IOException e)
{
    e.printStackTrace();
}

List<HtmlAnchor> list = (List<HtmlAnchor>)htmlPage.getAnchors();

for (HtmlAnchor htmlAnchor:list)
{
    System.out.println(htmlAnchor.getHrefAttribute());
}

    輸出的結果就是這樣,把網址裏全部<a>標籤的href屬性打印出來了,這樣取出來的網址又能夠繼續爬,因此就達到爬蟲的效果url

           

    

    一接觸一個新工具,最怕裏各類不懂的新語法,新類,我把本身的理解簡單說哈,幫助理解,這個HtmlUnit是一個瀏覽器模擬器,既然是模擬器

        WebClient就至關於瀏覽器了,因此第一步就new一個瀏覽器對象

        HtmlPage就至關於具體瀏覽器裏打開的頁面吧,因此你能夠看到這樣的語法,webClient.getPage(),用瀏覽器對象WebClient根據傳參的url來獲取一個頁面,這樣得到的HtmlPage對象就是打開的頁面了,而後有這個對象,你就能夠隨心所欲了,頁面全部的標籤均可以搞了,我這裏demo搞得是HtmlAnchor,表示<a>標籤,其餘的能夠看官網的API,這不一一列舉了

        有了這些小語法,把一個網站裏全部的圖片扒下來仍是沒問題的,我就把http://sexy.faceks.com/裏全部的妹紙圖搞下來了,4千多張,圖片很差發了,有興趣的朋友能夠本身試一下仍是挺好玩的

        可是這種爬法仍是比較基礎的,沒有設計到表單和腳本之類的,以後可能要搞的就是提交表單,搞登錄,好比網上比較多的爬新浪微博,爬淘寶的,後面有機會我再總結,反正本身比較菜,就只有慢慢來搞了,先記錄下來,否則之後本身學着學着就忘了

相關文章
相關標籤/搜索