質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
86.12%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

解決済

Selenium4を使用したスクレイピング時のドライバー自動更新について

az_ura
az_ura

総合スコア4

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。

1回答

0グッド

0クリップ

286閲覧

投稿2022/11/22 03:43

編集2022/11/22 06:44

前提

selenium4を使用し、Edgeのスクレイピングを行っているのですが
下記のエラーが発生しています。

発生している問題・エラーメッセージ

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts. msedge-selenium-tools 3.141.4 requires selenium==3.141, but you have selenium 4.3.0 which is incompatible.

上記のエラーは「msedge-selenium-tools」と「selenium」のバージョン不一致で起こるものですが、
selenium4では「msedge-selenium-tools」は不必要という情報を目にしました。

ドライバーの自動更新をおこなうために「msedge-selenium-tools」を入れていたのですが、
スクレイピング時にselenium4単体でドライバーの自動更新を行うことは可能なのでしょうか?

該当のドライバーの自動更新コード

# モジュールインストール from webdriver_manager.microsoft import EdgeChromiumDriverManager # ドライバの自動更新 driver = Edge(EdgeChromiumDriverManager().install(), options=options)

調べても見つけれなかったため、ご教示いただけますと幸いです。
よろしくお願いいたします。

以下のような質問にはグッドを送りましょう

  • 質問内容が明確
  • 自分も答えを知りたい
  • 質問者以外のユーザにも役立つ

グッドが多くついた質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

気になる質問をクリップする

クリップした質問は、後からいつでもマイページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

下記のような質問は推奨されていません。

  • 間違っている
  • 質問になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

適切な質問に修正を依頼しましょう。

2022/11/22 04:12依頼された後にこの質問は修正されています

こちらの質問が他のユーザーから「やってほしいことだけを記載した丸投げの質問」という指摘を受けました。

回答1

1

ベストアンサー

メッセージに書いてあるとおり、msedge-selenium-tools==3.141.4 と selenium==4.3.0 のバージョンが不適合だから表示されています。

msedge-selenium-tools のpypiを見ると、selenium4 では不要なようですよ。
https://pypi.org/project/msedge-selenium-tools/

投稿2022/11/22 04:50

TakaiY

総合スコア10422

spoofy_dragon👍を押しています

良いと思った回答にはグッドを送りましょう。
グッドが多くついた回答ほどページの上位に表示されるので、他の人が素晴らしい回答を見つけやすくなります。

下記のような回答は推奨されていません。

  • 間違っている回答
  • 質問の回答になっていない投稿
  • スパムや攻撃的な表現を用いた投稿

このような回答には修正を依頼しましょう。

回答へのコメント

az_ura

2022/11/22 05:02

ご回答ありがとうございます。 質問情報が足りておらず、申し訳ございません。 Selenium4ひとつで事足りるとの情報は発見いたしましたが、Selenium4でドライバの自動更新を行う方法が見つからなかった次第です。
TakaiY

2022/11/22 05:15 編集

では、質問を編集して内容を変更ください。 そのときに、実際にどのようなところで困っているのかを明記すると回答が付きやすいですよ。
az_ura

2022/11/22 06:44

承知致しました。 修正させていただきます。
TakaiY

2022/11/22 07:03

もしかして、パッケージの機能がselenium4に取り込まれたので、msedge-selenium-toolsをアンインストールするだけでいいのでは?
az_ura

2022/11/23 05:21

その場合、 # ドライバの自動更新 driver = Edge(EdgeChromiumDriverManager().install(), options=options) ここにそのパッケージ機能を使用しているので、ドライバの自動更新ができなくなってしまうのです。
az_ura

2022/11/23 07:27

なるほど、Serviceを使用して更新を行った後にドライバーを起動しているのですね。 やりたかったことが実現できました! ありがとうございます。

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
86.12%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問

同じタグがついた質問を見る

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

selenium

Selenium(セレニウム)は、ブラウザをプログラムで作動させるフレームワークです。この原理を使うことにより、ブラウザのユーザーテストなどを自動化にすることができます。