ModuleNotFoundError No module named '_lzma'

ScrapyでSpiderを動かそうとしたらエラーになった ModuleNotFoundError: No module named '_lzma' 参考 UserWarning: Could not import the lzma module. Your installed Python is incomplete - Stack Overflow 環境 MacOS M1 asdf poetry 対応方法 pythonを再度インストールし直す必要があった # `xz` は brewでインストール済み brew install xz # asdfでpythonをインストール asdf install python 3.9.12 asdf local python 3.9.12 # poetryをインストール pip install poetry asdf reshim # ライブラリをインストールし直して、Spiderを再実行 poetry install poetry run scrapy crawl xxx_spider

May 16, 2022

BeautifulSoupを使ってWikipediaの表をスクレイピングしてみた

きっかけ 今年のNFLのドラフト結果を集計したかったが、いい感じのAPIやデータベースが見つからなかった Wikipediaの記事が綺麗にまとまっていたので、これを使ってみることにした 2022 NFL Draft - Wikipedia 作ったもの piruty/NFLDraftDatabase Wkipediaの表を読み込んでpandasに食わせるところまでを実装 やってみた感想 久しぶりにスクレイピングを実装したが、表の読み取りが結構苦労した find_all(['th', 'td']) で複数要素を選択できることを知らず… 参考: 【Python】BeautifulSoupを使ってテーブルをスクレイピング - Qiita あとはwikipediaのソースを読みながら find / find_all で無理やり取得 BeautifulSoupの機能だけで実現できたので、このライブラリ優秀だな… 次にやりたいこと DataFrameに落とし込めたので、集計してみる 他の年のドラフト結果も取得してみる NFLのドラフト結果の考察を読む

May 14, 2022

YoutubeAPIで検索するCLIを作ってみた

作ったもの piruty/WakuwakuYoutubeAPI 参考にしたもの Youtube API YouTube Data APIの使い方 - Qiita Click Welcome to Click — Click Documentation (8.1.x) やったこと GCPでプロジェクトを作る APIキーを発行する YoutubeAPIの利用を許可する YoutubeAPIで検索する機能をPythonで実装 Clickを使った実装に修正 感想 検索するだけなら、APIキーを取得するだけでほぼ完了するのですごく簡単 生のURLを叩いてリクエストしているが、多分Youtubeの検索を実行するライブラリあるだろうなと思っている 未調査 次は、YoutubeAPIを実行した結果を元に一覧を表示する画面を作りたい

May 11, 2022

PythonでBlockchain APIを実装するチュートリアルをやってみた

この記事を写経してみた。 Blockchainにそこまで興味があるわけではないが、PythonのAPIを練習してみたいと思いサンプルを探していてたどり着いた。 最終的にFlaskを利用してBlockchainの機能をAPIとして実装できる。 Blockchainの説明もされているので、詳しくなくても実装しながら理解していける。 とはいえ、2017年に書かれた記事なので実装自体はモダンな感じではない。 また、簡易なAPIを実装することを目標にしているので、テストなども実装されていない。 個人的にはFlaskではなくFastAPIを使いたいし、型ヒントも導入したいので、ここからリファクタリングしていこうと思う。

July 24, 2021