2016-12-07 6 views
0

現在、JSOUPコネクタを使用してWebページのページタイトルを取得しています。 しかし、angularJsを使用してWebサイトを構築すると、JSOUPコネクタはタイトルがページソースにないため、タイトルを取得できません。JavaでangularJsを使用して構築されたページのタイトルを取得する方法は?

try { 
    Document doc=Jsoup.connect("https://support.microsoft.com/en-us/kb/948496").get(); 
    System.out.println(doc.title()); 
} catch (IOException e) { 
    e.printStackTrace(); 
} 

javaを使用してangularJを使用して作成したページのタイトルを取得するにはどうすればよいですか?

+0

これを達成するために行ったコードを表示 –

答えて

0

だから、私はjsoupを使用してangularjs.orgを解析しようとしましたが、それだけで正常に動作します:

try { 
    Document doc = Jsoup.connect("https://angularjs.org/").get(); 
    Elements header = doc.select("title"); 
    System.out.println(header.html()); 
} catch (Exception e) { 
    e.printStackTrace(); 
} 

は私 "AngularJS - Superheroic JavaScriptのMVWフレームワーク" を与えるあなたは例を提供してもらえ

を動作しないウェブサイトですか?

EDITyour particular caseでは、タイトルが動的に入力されています。だから、質問は "どのように角度のウェブサイトのタイトルを解析する"ではなく、 "動的に作成されたタイトルを取得する方法"です。私はjsoupがまったくそれをしないと思う。 Webページのソースのdom要素にアクセスするだけです。あなたがしたいことは、javascriptを実行して結果を得ることです。私は実際のブラウザを使ってページをレンダリングし、最後のDOMツリーの要素を取得するいくつかのテストユーティリティ(Seleniumなど)を見ていきます。お使いのブラウザがこのページをロード

+0

上記の例をhttps://support.microsoft.com/en-us/kb/948496 –

0

からhttps://support.microsoft.com/en-us/kb/948496それはまた、セレクタ.col-xl-20であなたのヘッダーが含まれているので、あなたはjsoupでそのページをロードすることができ、設定が完了している彼らhttps://support.microsoft.com/api/content/kb/948496の中で、いくつかの他のものをロードします!

+0

で試してください。https://support.microsoft.com/ en-us/kb/948496は私が与えた例です。しかし、Javaでjavascriptを実行してページタイトルを取得するためのフレームワークはありますか?正確に言えば、私はジェネリックプログラムであることを望んでいます。 –

+0

一般的な方法はありません。各URLは別々に処理する必要があります。 – TDG

関連する問題