エンジニアステップ

初心者エンジニア(1年目~3年目くらい)のための技術ブログ

「DeprecationWarning: insert is deprecated. Use insert_one or insert_many instead」エラーが出て困った

「DeprecationWarning: insert is deprecated. Use insert_one or insert_many instead」エラーが出て困ったので調べた。

python - Mongoengine DeprecationWarning: insert is deprecated - Stack Overflow

 

回答はこちら

insert_many was introduced in mongoengine version 0.15.3. You can try to update your mongoengine. If you don't want to do that try to :

 mongoengineをupdateすれば良いとのこと。

しかし、ダメだった。

 

Compatibility Policy — PyMongo 3.7.2 documentation

バージョン変えるか、おとなしく指定された関数を使うかしかなさそうです。

 

今回だとinsertの代わりに、

isert_oneか、insert_manyを使うべきだと言う話。

for a in root.xpath('//h3//a'):
collection.insert_one({
'url': a.get('href'),
'title': a.text_content(),
})

とりあえず、私はこんな感じで、insertをinsert_oneにして対応しました。