2017-08-28 13 views
0

私はアヤックスがロードされているテーブルの解析に問題があります:私は何を得るのですJsoup、解析htmlのロードされたAjaxのテーブル

Document doc = Jsoup.connect("http://lfl.ru/club553").get(); 

<div class="tournament_stats_table_tournament_3442 tournament-stats-table" style="display: block;" url="/?ajax=1&amp;method=tournament_stats_table&amp;tournament_id=3442&amp;club_id=553"> 
         подождите...     </div> 

ができるものを私にしてください知らせますこの状況で行われます。 Thx。

+1

可能な複製(https://stackoverflow.com/questions/7488872/page-content-is-loaded-with-javascript-and [ページのコンテンツは、JavaScriptとJsoupはそれを見ていないがロードされている] -jsoup-doesnt-see-it) – luksch

答えて

0

server-> serverリクエストを使用してデータを取得することはできません。サーバー上でリクエストを実行すると、JSは実行されないため、テーブルは使用できません。これらについての代替考えるほど

  1. あなたがウェブサイトの所有者であれば、あなたがパース - 可能な場合は、AJAXを回避しよう。
  2. ajaxリクエストのエンドポイントを確認し、ウェブページではなく単に解析するだけです。
+0

答えに感謝します。 私はサイトのオーナーではないため、私は自分のサイトでこのテーブルを更新するプロセスを自動化する必要があります。 –

+1

@ivanVishnyakはajaxリクエストをチェックし、その結果を解析します。 –

0

まず:あなたはちょうどその後

Connection.Response = Jsoup.connect.method(get).excute 

を使用して、クッキーを取得する必要があります。クッキーとヘッダ

document=Jsoup.connect.header.data.post 

例えばと要求を行います

Connection.Response loginForm=Jsoup.connect("http://www.a5.cn"). 
     method(Connection.Method.GET).execute(); 

Document document=Jsoup.connect("http://www.a5.cn/login.html"). 
     data("formhash","97bfbf").data("hdn_refer","http://www.a5.cn/") 
     data("account","userID").data("autoLogin","1").data("password","your password"). 
     cookies(loginForm.cookies()).header("Accept","application/json, text/javascript, */*; q=0.01").header("X-Requested-With","XMLHttpRequest").post(); 

System.out.println(document.body().text()); 
関連する問題