2025年– date –
-
Chrome自動更新でSelenium停止?もう「あの地獄」とは無縁に
「またか…」 深夜2時。モニターに映し出されたのは、見慣れた、そして最も恐れていたエラーメッセージだった。 SessionNotCreatedException: Message: session not created: This version of ChromeDriver only supports Chrome version XX 心臓がドクンと... -
スクレイピングの賢い待ち時間:time.sleep()卒業とWebDriverWaitの真価
Webスクレイピングに挑むあなたなら、一度は「待ち時間」の壁にぶつかった経験があるのではないでしょうか? 私もかつてはそうでした。PythonでWebスクレイピングを始めたばかりの頃、動的なページの要素がなかなか取得できず、最終手段のように time.slee... -
requestsの403 Forbiddenを突破せよ!User-Agent偽装でWebスクレイピングを成功させる道
「また…403 Forbidden」 画面に表示されたその数字の羅列を見るたび、私の胸は鉛のように重くなった。副業でWebスクレイピングによるデータ収集を始めてから、早数週間。意気揚々とPythonのrequestsライブラリを叩き、いざ特定のサイトから情報を取得しよ... -
SeleniumとAPI、データ収集の「壁」をぶち破る真実
「またか…」深夜のオフィスに響く、PCのCPUファンが唸る音。画面には、まるでスローモーション映画のように、一つ一つクリックされ、ページが遷移していくWebブラウザのウィンドウが並んでいました。Seleniumを使ったデータ収集の真っ最中。膨大な競合サイ... -
FizzBuzzはif文なしで書ける?Pythonicコードの遊び方と驚きの解法
プログラミングの学習を始めたばかりの人も、ベテランのエンジニアも、一度は「FizzBuzz問題」に挑戦したことがあるでしょう。3の倍数で"Fizz"、5の倍数で"Buzz"、両方の倍数で"FizzBuzz"、それ以外は数字を出力する。シンプルながらも、条件分岐の基本を... -
もう迷わない!再帰関数で深層フォルダを瞬速探索するPythonプログラムの書き方
深夜2時。部屋の照明はモニターの光だけで、目の前には数えきれないほどのフォルダとファイルが広がっていました。顧客から緊急の依頼。「あのプロジェクトのログファイルから、特定の期間のエラーコードを全て抽出してほしい」。しかし、そのファイルは複... -
Pythonの『賢者のスイッチ』:インポートの呪縛を解き放つ
あなたは、Pythonスクリプトをモジュールとしてインポートした途端、意図しない処理が走り出し、混乱と焦燥に駆られた経験はありませんか? 「なぜだ?インポートしただけなのに、なぜ勝手に動くんだ?」 かつて私は、まさにその『インポートの呪縛』に囚... -
もうKeyErrorで冷や汗をかかない!Python辞書から安全にデータを取り出す『get()』の作法
「まただ…またKeyErrorか…」 Pythonでプログラムを書いていて、こんな経験はありませんか?辞書から値を取り出そうとした途端、見慣れた赤い文字のKeyErrorが画面を埋め尽くし、プログラムが強制終了。冷や汗が背中を伝うあの瞬間。私が初めてWebサービス... -
そのコード、爆速化のチャンス!リスト内包表記vsforループの深層
「また、この処理が遅い…」 Pythonでデータ処理をしていると、誰もが一度は経験するこの焦燥感。特にリストの生成や加工を繰り返していると、気がつけばスクリプト全体のボトルネックになっていることがあります。あなたは、その遅さの原因が、もしかした... -
1%ガチャ100回で当たらない?Pythonで解く確率の真実
「また爆死か…」 スマホの画面に表示された「排出なし」の文字を前に、私は何度目かのため息をついた。1%の確率で出るというSSRキャラクター。100回引けば、理論上は一度くらい当たってもおかしくないはずなのに、なぜか私の手元にはいつものRやSRばかり。...