こうしたサイトつまずきます:
http://www.pythonchallenge.com/
非常に興味深い感じ、それを記録するプロセスを通過
0オフ
ヒントURLアドレスを変更しようとしている。だから、2 ^ 38を直接計算することができますアクセスwww.pythonchallenge.com/pc/def/274877906944.html
第一オフ
マップや発言権を与えられました:
グラムfmnc WMS bgblr rpylqjyrc GR ZW fylb。rfyrq ufyr amknsrcpq YPC DMP。bmgle GR GL ZW fylb GQ glcddgagclr YLB rfyr'q UFW rfgq RCVR GQ QM jmle。sqgle qrpgle.kyicrpylq()GQのpcamkkclbcb。LMU ynnjw mlのRFC SPJ。
もちろんそれは、スクリプトを記述し、シーザー暗号まあのようになります。
S = " G fmnc WMS bgblr rpylqjyrc GR ZW fylb。rfyrq ufyr amknsrcpq YPC DMP。bmgle GR GL ZW fylb GQ glcddgagclr YLB rfyr'q UFW rfgq RCVR GQ QM jmle。sqgle qrpgle.kyicrpylq()GQのpcamkkclbcb。LMU ynnjw mlのRFC SPJ 。" F = '' のための私にS: もしi.isalpha(): F + = CHR(((ORD(I)+2)-ord(' '))%26 + ORD(' ' )) 他: F + = I プリント(F)
出力:
2オフ
彼はヒントを与えました:
文字を認識。多分彼らは本にある、
しかし、おそらく彼らは、ページのソースです。
多分これはすでに明白で、その答えは、ソースコード、F12程度です。
最初に考えたのはどのような暗号化方式ですが、よく見るヒントは、要件を理解するために来た:文字を見つけるために手紙の中に隠さする必要が認識しています。!
スクリプトを記述するために直接コピーすることができ、非常に簡単ですので、あなたもリクエストがこれを取得使用することができます。
インポート要求が インポート再 URL = ' http://www.pythonchallenge.com/pc/def/ocr.html ' R = requests.get(URL) ZZ = " 見つけます+ < - 。?!(。+?) - - > 「 テキスト = re.findall(ZZ、r.text、re.DOTALL) F = '' #の印刷(テキスト) のための I におけるテキスト[0]: もしi.isalpha(): F + = I プリント(F )
得ます
3オフ
ヒントは以下のとおりです。
![](https://img2020.cnblogs.com/i-beta/1642974/202003/1642974-20200320120002662-1052206087.png)
だから、オンとオフの1ほとんど直接ノートに定期的に十分な標準的な文言ことで、約取得します:
[AZ] + [AZ] {3}([AZ])[AZ] {3} [AZ] +
周りその後、わずか3つの大文字に囲まれることを確保するように、小文字に包まれたが必要
インポート要求 のインポートを再 URL = ' http://www.pythonchallenge.com/pc/def/equality.html ' R = requests.get(URL) ZZ = " <! - (+。?) - > " テキスト = re.findall(ZZ、r.text、re.DOTALL) ZZ = R ' [AZ] + [AZ] {3}([AZ])[AZ] {3} [AZ] + [ F = re.findall (ZZ、テキスト[0]) S = '' のための I におけるF: S + = I プリント(S)
出力:
![](https://img2020.cnblogs.com/i-beta/1642974/202003/1642974-20200320120323864-844964992.png)
それはhttp://www.pythonchallenge.com/pc/def/linkedlist.phpに入れURLにプロンプトが表示されました
4オフ
![](https://img2020.cnblogs.com/i-beta/1642974/202003/1642974-20200320121002600-948230909.png)
彼は、次のものが44827ではないと述べたURLここで観察されました:
http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing=12345
それが実行できる場所を見てみましょう、何回のサイクルに知らない、44827の発見はまだ同じ構造になった後、その書き込み爬虫類を変更し、何も見つからなかったパラメータであります:
インポート要求の インポートを再 BASEURL = " http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing= " URL = " http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing = 12345 ' ながら 1 : R = requests.get(URL) プリント(r.text) ZZ = ' (。+)何もしない」 #贪婪模式匹配最长 数= re.findall(ZZ、r.text) URL = BASEURL + 番号[0] プリント(番号[0])
16044ここでは、見て、問題がある見ることができます:
まあ、続行するには2で割るには、それが判決を追加する必要があります。
インポート要求の インポートを再 BASEURL = " http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing= " URL = " http://www.pythonchallenge.com/pc/def/linkedlist.php?nothing = 16044 ' ながら 1 : R = requests.get(URL) プリント(r.text) ZZ = ' (。+)何もしない」 #贪婪模式匹配最长 数= re.findall(ZZ、r.text) であれば( LEN(番号)== 0): 番号 = url.split(' = ')[1 ] 数 = STR(INT(数)/ 2 ) URL = BASEURL + 数の 印刷(番号) 他: URL = BASEURL + 番号[0] プリント(番号[0])
干渉項があることを言って、実行し続けると、すぐに別のがある見ることができます:
しかし〜私の定期的な書き込みによると、これは干渉項のHHHに影響を与えなかった入ることはありません
最後に、この、次のレベルのURLは次のとおりです。
http://www.pythonchallenge.com/pc/def/peak.html