• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    java爬蟲系列:怎么用jsoup進行爬蟲開發?(3)

    jsoup時優秀的java爬蟲框架,上一篇已經分享了怎么添加代理,頭部,和參數,這篇分享用jsoup進行模擬登陸

    東西/原料

    • eclipse/idea
    • jsoup
    • 需要爬取的網站

    方式/步調

    1. 1

      第一步:找到需要登岸的網站的接口,即登岸挪用的接口,按F12,點擊登岸,在network一欄看到請求的接口,如圖:

    2. 2

      第二步:點擊接口,查看登岸信息的參數,在Header最下面可以看到 form data,這就時請求參數,如圖:

    3. 3

      第三步:用上面的請求參數進行構建,jsoup代碼如下:

      Map<String, String> data = new HashMap<>();
      data.put("username", "ss");
      data.put("password", "ss");

      Document doc = Jsoup.connect("")
             .data(data)
             .post();
      System.out.println(doc.toString());

      成果如圖:

    4. 4

      第四步:上面輸出成果提醒登岸掉敗,必定是用戶名或暗碼錯誤,下面輸入準確的用戶名和暗碼,看成果是否能當作功,如圖:


      可以看到登岸當作功

    5. 5

      第五步:登岸后的cookies提取和保留。登岸完當作之后,鄙人次請求的就不需要登岸,只要把把cookies帶入即可,代碼如下:

      Map<String, String> data = new HashMap<>();
      data.put("username", "xxx");
      data.put("password", "xxx");
      Connection.Response res = Jsoup.connect("http://127.0.0.1:8080/login").data(data)
             .method(Connection.Method.POST).execute();
      // res.cookies() 提取cookies 進行下一次請求
      Document doc = Jsoup.connect("http://localhost:8080/index").cookies(res.cookies()).post();

    6. 6

      第六步:這篇是簡單的登岸模擬請求,下一篇將對請求的dom進行解析

      END

    注重事項

    • 網站通順
    • 發表于 2020-04-25 19:00
    • 閱讀 ( 1376 )
    • 分類:其他類型

    0 條評論

    請先 登錄 后評論
    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆