カテゴリ: Rust

Rust で ファイルダウンロード

そんなに難しいわけではないです。

Rust で Webスクレイピング 途中経過

毎日ぼちぼちとRustでWebスクレイピングするライブラリを作っています。
と言ってもServoが開発している、html5ever のラッパーなんですけどね。

前回の記事で作っていたものがよく見てみたら、getElementByIdGetElementsByTagNameが、子孫ノードを持っていなくて、ちょっと改修しました。html5ever は NodeNodeEnumCrone Traitを実装しておらず、cloneができなくて困っていたんですが、どうやらHandleはcloneができることに気づいた。それを利用して、HandleをVecに追加する際にHandleごとCloneする方法を取りました。

とりあえずこの二つさえあればなんとかスクレイピングできそうですが、jQueryに寄せたいとも思っているので 少しだけでもjQueryライクにできればなと思ってます。

[Rust] スライスせずに配列から値を取り出す

またRustについてです。Vec型から値を取り出そうと試行錯誤していたんですが、どうもうまくいきませんでした。

こうしてしまうと、a.get(0) で取り出した値は、aのスライスとなるため Some(&String) この型が返ってしまいます。

答えを言うと、

でよかったです。