2018年10月13日土曜日

C# : FiddlerCoreを使ってブラウザで見た画像ファイルを保存する

2019年5月追記) DecryptSSLの機能を使うにはFiddler用のルート認証が必要になります。 (最初この記事を書いたときはFiddler本体も入っていたので気付きませんでした)

一番手っ取り早くルート認証をインストールする方法はFiddler本体をインストールしてメインメニューの「Tools」-「Options」から「HTTPS」タブを選択、「Capture HTTPS CONNECTs」と「Decrypt HTTPS traffic」をチェックします。 ダイアログが表示されるので、中身をよく読んでルート認証をインストールしましょう。

追記終わり//


FiddlerはProxy型のhttp通信のデバッグツールです。 http通信を見張るだけではなく、リクエストやレスポンスを差し替えるなどかなり深い部分を触れるツールになっています。 サーバー側の変更をせずにレスポンスを書き換えることでウェブページのjavascriptをデバッグしたりとか、色んな用途に使われています。

強力なツールなだけに取っ付きにくい部分があります。 「あれがやりたいだけなのに……」ってときに重すぎるんですよね。 で、そのコア機能だけを提供するFiddlerCoreというライブラリが公開されています。 これを使って簡単なコードを書いた方が目的を気軽に達成できるケースも多い事でしょう。 そんなわけで今回はFiddlerCoreに触ってみました。 試しに通信中の画像ファイルを保存するサンプルコードを書いたので、そのメモを残しておきます。

※ FiddlerCoreを使う注意点として、ライセンスの問題があります。 詳しく調べていないのでよく分かりませんが、アプリに組み込んで配布するにはお金を払わないといけないのかな? (2015年あたりからそうなったっぽいです。) って事で多分フリーソフトに組み込むのは現実的ではありません。 趣味で使う場合は自分用ツールで、公開するならソース配布という事になりそうですね。

ちなみにリファレンスとかチュートリアルとかのドキュメントは一切読んでません。 適当です、適当。 その辺踏まえてお読みください。

2018年10月6日土曜日

YouTubeのチャンネルに登録された動画一覧を得るコード

YouTubeで適当に動画を見ていて「このチャンネルの動画最初から見てみようかな?」ってなったことありませんか? で、そのチャンネルに700本くらい動画があったら……。

YouTubeの動画の絞り込み機能って貧弱なんですよね。 特にチャンネルの動画一覧のページにある機能はほとんど何もできません。 せめて日付で絞り込む機能があればいいんですけど、現状追加日で並び替えて古い順から見てくしかないのかな? 最初の数十本はそれでいいのかもしれません。 でも700本中の300本目とか、探すだけでも大変で困ります。

そういえばずっと前にYouTubeの自分のチャンネルの動画をリストアップするコードを作ったよな? でも確かめてみると今は動かないようです。 今のやり方で作り直すしかないようです。 って事で自分用の簡単なツールをあらためて作ってみました。

API Keyの取得