XPathで要素(100浮動小数点値)を見つけて、System.Outを使用してコンソールに出力しました。これらをソートし、上位3つの値を出力する必要があります。この点で私を助けてください。 ありがとうコンソールで上位3つの値を出力する必要があります
答えて
あなたはSeleniumWebdriverを使用しているので、これはおそらくデータ構造:List<WebElement>
になります。
リストはjava.util.Collectionフレームワークの一部であるため、ソートを実装することはあまり難しくありません。私が興味のある読者に例外のより良いハンドリングを残す
Collections.sort(list, new Comparator<WebElement>(){
@Override
public int compare(WebElement e1, WebElement e2){
String fl1Str = e1.getAttribute("toSortAfter");
String fl2Str = e2.getAttribute("toSortAfter");
if (fl1Str != null && fl2Str != null){
float f1 = Float.parseFloat(fl1Str);
float f2 = Float.parseFloat(fl2Str);
if (f1 < f2){
return -1;
}
else if (f1 > f2) {
return 1;
}
}
return 0;
}
});
、また...:リストは、ソート後の属性にtoSortAfter
と呼ばれたいList<WebElement>
と浮動小数点値が含まれている場合、このような何かが、仕事ができます私はこれを私の頭の中で、そしてJavaコンパイラを手に取らずに書きました。構文やその他の間違いがあるかもしれません。
注:あなたは、それ以上のお手伝いをすることはできませんcollectiongされHMTLノードの知識がなくても
。浮動小数点値が属性ではなく、属性が異なって呼び出されることもあります。要素のコンテンツの場合は、WebElement.getText()メソッドを使用してこの要素にアクセスできます。
ありがとう@junijo。私はこれを試してみましょう。 –
私はここにHTMLを入れたいけどサイズは大きくなっています:( –
あなたが集めるノードのうちの1つのHTMLをつかんでください。ソートの問題とは関係のない子ノードを投げ捨ててください。 – junijo
私はセレンについて知りません。私のコードはjavaに関連しています。浮動小数点数がこのような文字列(5.3 6.366)の場合、次のコードを使用できます。
String floatNumber = "5.3 6.366";
String[] numbers = floatNumber.split(" ");
Arrays.sort(numbers);
for(int i=0; i<numbers.length;i++){
System.out.println(numbers[i]);
}
- 1. Windows上でTomcatコンソール出力がどこにありますか
- 2. コンソール上に予期しないJavaScript出力があります
- 3. テキストファイルの出力を上書きする(すべての出力を保存する必要があります)
- 4. graphQL - タイプは出力タイプである必要があります
- 5. Windows上のLinux通信 - 出力はゼロにする必要があります
- 6. アプリケーションは3つの層を持つ必要があります
- 7. InvalidArgumentError:プレースホルダテンソルプレースホルダの値を入力する必要があります
- 8. ValueErrors:アンパックするには3つ以上の値が必要
- 9. 私はカラーテキストを出力する必要があります
- 10. レコードあたりの上位3つの値
- 11. Tkinterコンソールの "Enter Verifier"に入力を渡す必要があります
- 12. gulp-browserify出力が異なる必要があります
- 13. コンソールに出力がありません
- 14. 出力を一致させる必要があります
- 15. __init __()がありません3つの必要な定位置引数
- 16. TypeErrorがありません3つの必要な定位置引数
- 17. バックグラウンドサービスはサーバー上のGPS位置を送信する必要があります
- 18. 入力値に2を加える必要があります
- 19. Keystoneが必要なGraphQLは、出力タイプである必要がありますが、フィールドタイプは未定義です。
- 20. 「テンソルフローのプレースホルダテンソル入力の値を入力する必要があります」
- 21. 3つのSQLリクエストを1つにまとめる必要があります
- 22. なぜ "dtype int64でプレースホルダテンソルの出力に '値を入力する必要がありますか?
- 23. Excel - 入力が削除されても式の出力値を永久にする必要があります
- 24. mysqlデータをjsonの形式で出力する必要があります
- 25. Tensorflow:dtype floatでプレースホルダテンソル 'input_image'の値を入力する必要があります
- 26. いつjava.sql.Connection.rollback()を呼び出す必要がありますか?
- 27. いつsetContentAspectRatioを呼び出す必要がありますか?
- 28. いつMessageQueue.EndReceive()を呼び出す必要がありますか?
- 29. 結果をJAVAスクリプトで出力する必要があります
- 30. Excelで3つのAND条件を満たす必要があります
SOコミュニティへようこそ。答えがあなたを助けない場合、人々があなたの質問に投票した理由を不思議に思うなら、人々があなたに正しく答えるために必要な情報を追加することをお勧めします。リストから3つを選択するか、HTML内の浮動小数点値を見つけることでソートに問題があるかどうかは不明です。もしあなたがあなたの問題をより明確に指定できるなら、もし助けがあれば。 – luksch