お帰りなさい｡
これからも素晴らしいツールを作り続けましょう｡
私たちの池のAPIチェックでは､ パスワードをSHA 1に変換するのみです｡
しかし､ これをAPIに送信する必要があります｡
パスワードのAPIです｡
では､ ここで何ができるのか？
まず最初に､ パスワードまたはハッシュ化されたパスワードの最初の5文字だけが必要であることを思い出して､
ここで楽しいことをやってみましょう｡
最初の5文字を言うことができる｡
また､ テールと呼ばれるものがあります｡
そこで､ 最初の5文字と最初の変数を格納することにします｡
そして､ 2番目の変数には残りを格納します｡ なぜなら､ この2つは後で必要になるからです｡
だから､ この中に｡
Pythonでは､ 5文字目までの開始文字を取得する構文が用意されています｡
そして後編へ｡
残されたキャラクターたち｡
だから､ 5番目のインデックスからずっと最後まで､ いい具合に簡単なんだ｡
そして､ これは以前から知っていたことです｡
これで最初の5文字と尻尾が揃ったわけです｡
そしてここで､ これをリクエストAPIデータに追加することができます｡ リクエストAPIデータを呼び出して､
ここで最初の5文字をうまく与え､ ここにレスポンスを保存しましょう｡
そうそう｡
では､ どのような反応が返ってくるか､ 見てみましょう｡
だから､ 実はここでレスを返すことにしているんです｡
そして､ すべてが正しく行われていることを確認するために､ 最初の5文字と末尾をプリントアウトしてみましょう｡
これを実行すると
わかりました｡
最初の5人のキャラクターを手に入れたようです｡
ここにスペースがあり､ 残りがあり､ エラーにならないのです｡
動作しているようなので､ レスポンスも表示してみましょう｡
そして､ それがうまくいっているかどうかも確認してください｡
200のレスポンスがあるように見えますが､ どのようなデータを受信したのか､ まだ正確にはわかっていません｡
ここで何ができるのか？
さて､ この返却するデータについて､ もっと詳しく知りたい｡
では､ ここで別の関数を作ってみましょう｡
そして､ とりあえずはリードレスポンスと呼ぶことにします｡
そして､ 得られた手応えをそのまま伝える｡
そして､ この中で､ この反応を読んでみよう｡
ここでは実際にプリントレスポンス､ ドットテキストを行うことができます｡
なぜなら､ APIのレスポンスだからです｡
だから､ 理想的にはテキストを読むだけでいいのですが､ それで何かできるのかどうか見てみましょう｡
だから､ この返事はただ読んだだけになってしまう｡
このように対応する｡
これを実行すると
おい､ あれ見ろよ｡
これが私たちの回答です｡
見ての通り､ ハッシュ化されたパスワードが大量にある｡
たくさんあるんですよ｡
数百はありそうですね｡
これが私たちの手応えなんですね｡
response to textを使うことで､ ハッシュ化されたパスワードの先頭に一致するすべてのハッシュを取得することができます｡
とてもクールです｡
実際にできること
こちらでは､ 24､ 3､ 1がどうなっているかわかりますか？
といった具合に｡
これは､ これらのパスワードが実際に何回ハッキングされたかを示しています｡
かっこいいですね｡
理想的なのは､ カウントを取得して､ そのうちのどれかがテールと一致するかどうかを確認することです｡ なぜなら､
テールをチェックするだけでなく､ カウントをプリントアウトできるからです｡
そこで､ read response関数の代わりにgetを持たせてみましょう｡
パスワード
リーク
ハッシュまたはレスポンスと実際のハッシュを受け取るカウント関数｡
チェックするのは､ チェックする必要がある独自のパスワードハッシュです｡
そこで､ このハッシュをチェックして､ すべてのハッシュをループさせることにします｡
だから､ また何かできるはずです｡
PythonのNiftyは､ ここで我々はハッシュが等しいと言うことができます｡
そして､ ここではタプルを使うことができ､ 実際に以前見たことのあるタプル包含を行うことができます｡
ラインドットスプリットって言えるんだ｡
そこで､ ライン内のすべてのものを､ ご覧のような列で分割します｡
つまり､ ハッシュの尾とハッキングされた回数ですね｡
そこで､ 列で分割することにします｡
そして､ ループして4行と言うことになります｡
そこで､ このセリフが出てくるわけです｡
ハッシュで4行｡
ドットテキストです｡
さて､ このままにしておくと､ 実はこれはうまくいきません｡
その理由は､ すぐにお見せします｡
実は､ 今､ それをやってみよう｡
では､ プリントハッシュでどんなものが出てくるか見てみましょう｡
Reidのレスポンスの代わりに｡
今､ これを実行します｡
そこで､ パスワード漏れのアカウントを取得します｡
そして､ もし私が走ったら､ これをクリアしよう｡
エラーが出るのですが？
まあ､ チェックのためにハッシュも追加しないといけないので､ エラーになるんですけどね｡
では､ チェックするハッシュはどうすればいいのか｡
まあ､ 尻尾の方ですよね｡
実際のパスワードの末尾です｡
そこで､ 第2パラメータにテールを追加することにします｡
保存して再度実行します｡
よし､ 反応があったぞ｡
200で､ ジェネレーターオブジェクトを取得しました｡
このジェネレーターオブジェクトは､ 実際にレートを通してループさせることができます｡
では､ 4つやるとどうなるか見てみましょう｡
ハッシュとカウントを持つタプルに変換したことを思い出して､ ハッシュとカウントをハッシュで表すhash
hをやってみましょう｡
だって､ 私たち分かれるんですよ？
だから､ こうすれば｡
それぞれプリントして数えてみよう｡
これを実行すると
うーん｡
エラーが発生するのですが｡
値のエラー｡
解きほぐすべき価値観が足りない｡
1を抉り出すことを期待する｡
うーん｡
それはなぜでしょうか？
とりあえずHをプリントして見よう｡
そして､ とりあえずカウントを削除する｡
これをクリアして､ もう一度実行してみましょう｡
ふむ｡
きちんと分割できていなかったようです｡
すべての項目は､ それ自身のリストです｡
そこで､ 実際にこの文字列に対して､ 行の分割と呼ばれるものを使用する必要があります｡
そして､ ご覧の通りです｡
文字列中の行のリストを返す｡
そして､ 線の境界で壊れる｡
そこで､ 実際にハッシュテキストの上で4つのループを行うとき､ 上にスクロールすると､ それが見えるかどうか見てみましょう｡
いや､ もうないんです｡
しかし､ 上にスクロールすると､ 大量のテキストリストが表示されるだけです｡
理想的には各行で､ この行が個々の要素の代わりに､ 実際のハッシュとカウントがうまくいくように分割します｡
だから､ このようにドット分割線をすればいいのです｡
これを保存してもう一回実行すると
だいぶ良くなりましたね｡
だから今､ 私たちは欲しいものを手に入れたのです｡
もう一度､ 今までのカウントに戻ることができるのです｡
そして､ Hとカウントを印刷したら､ 保存しよう｡
これをもう一度実行してください｡
そして､ その方がずっといい｡
各アイテムを分離しています｡
一息ついて､ 次の動画でこの続きを見てみましょう｡