AWS lambda python3.9で以下のようにBeautifulSoup実行時
soup = BeautifulSoup(response.text, 'lxml')
以下のエラーが発生した際の対処方法について備忘のため記載します。
[ERROR] FeatureNotFound: Couldn't find a tree builder with the features you requested: lxml. Do you need to install a parser library?
対処1: lxmlのインストール
エラーメッセージからlxmlのパーサーをインストールすれば解決するかと考え、lxmlのライブラリーをインストール
pip install lxml -t .
しかし、現象は解決せず。。。
対処2: lxmlの代わりにhtml5libを使う
BeautifulSoup はパーサーとしてlxmlの他にもhtml5lib もサポートしているので、html5libを使用してみます。
html5libがインストールされていなかったら、インストールをする。
pip install html5lib -t .
BeautifulSoup の呼び出し部分を以下に修正します。
soup = BeautifulSoup(response.text, 'lxml')
実行してみたら解決しました。
lxmlにこだわる必要もなかったので私はこれで解決としました。
Comments