ScalaからJsoupを利用する
ScalaからJsoupを利用しようとして詰まったのでやり方メモ。
Jsoupでselectを利用すると、返り値としてElementsというコレクションが得られます。これをいつもどおりforeachしてぐるぐるしようと思ったら、Elements.foreachが得られなかった。困った。
どういうことかと思って調べてみると、以下のページに。
Collections - Java と Scala 間のコレクションの変換 - Scala Documentation
要するに、ScalaとJavaは両方共コレクションというものを持っているが、相互変換可能なだけで一応別物なのよ、と。
ElementsはListインターフェースをimplementしているので、implicitな変換に対応していそうだ、ということで上記のページを参考に、以下のパッケージをimport
1.起きたこと
Jsoupでselectを利用すると、返り値としてElementsというコレクションが得られます。これをいつもどおりforeachしてぐるぐるしようと思ったら、Elements.foreachが得られなかった。困った。
2.原因
どういうことかと思って調べてみると、以下のページに。
Collections - Java と Scala 間のコレクションの変換 - Scala Documentation
要するに、ScalaとJavaは両方共コレクションというものを持っているが、相互変換可能なだけで一応別物なのよ、と。
3.解決方法
ElementsはListインターフェースをimplementしているので、implicitな変換に対応していそうだ、ということで上記のページを参考に、以下のパッケージをimport
import collection.JavaConversions._これでElements.foreachが反応してくれるようになりました。
コメント
0 件のコメント :
コメントを投稿