ブラウザ
Seleniumを使用してウェブページの<a>タグ(リンク)にアクセスし、クリックしたり、URLを取得したりする方法を紹介します。 1.Seleniumのセットアップ まず、Seleniumを使用するために必要なライブラリをインストールし、適切なWebDriverを用意してください</a>…
Seleniumを使ってWeb操作を自動化していると、iframe(インラインフレーム)内の要素を操作したい場面があります。しかし、iframe内の要素は通常のfind_element()では取得できず、「要素が見つからない」エラーが発生することがあります。 今回は、iframeの…
ウェブページに埋め込まれたiframeを操作する必要がある場合、通常のページ操作とは異なるアプローチが必要です。 iframeは独立したコンテンツを持つため、操作する前に明示的にiframeへ切り替える必要があります。 この記事では、PythonでSeleniumを使用し…
ウェブページを操作する際に、frame要素を使って異なるHTMLコンテンツが埋め込まれている場合があります。 Seleniumでは、frame要素に切り替える必要がありますが、そのためにはWebDriverWaitを利用してframeが利用可能になるまで待機する方法が便利です。 …
ウェブサイトをスクレイピングする際に、特定の要素が読み込まれるのを待たずに操作を進めると、エラーが発生することがあります。 この問題を解決するために、Seleniumでは「待機」を活用できます。 今回は、PythonとSeleniumで指定した要素が表示されるま…
PythonのSeleniumを使用すると、ブラウザを自動操作することができます。本記事では、「find_element(By.PARTIAL_LINK_TEXT, "xxx")」を用いて、リンクテキストの一部を指定して要素を取得し操作する方法について紹介します。 今回は、Googleのホームページ…
PythonのSeleniumを使用すると、ブラウザを自動操作することができます。本記事では、「find_element(By.LINK_TEXT, "xxx")」を用いて、リンクテキストを指定して要素を取得し操作する方法について紹介します。 今回は、Googleのホームページで「Gmail」ボタ…
Webスクレイピングやテスト自動化を行う際に、特定の要素がページ上に表示されているかどうかを確認することが重要です。この記事では、PythonとSeleniumを使って、要素が表示されているかどうかを確認する方法を分かりやすく解説します。 目次 背景 方法 基…
先日Google Chromeの場合のWebサイトの見えていない部分までスクリーンショットを取る方法というものを記載しました。 そうするとEdgeの場合はどうかということになりますが、今回はGoogle Chrome同様にEdgeでWebサイトの見えてない部分までスクリーンショッ…
Webサイトで、必要な情報のスクリーンショットをと思っても表示されている部分までしかとれずに困った経験はありませんか。 Google Chromeの場合、簡単な操作でWebサイトの見えていない部分までスクリーンショットを取る方法があります(Windows版)。 Webサ…
SeleniumにてWebサイトアクセスなどを行っている時に発生するエラーには以下のようなものがあります(SessionNotCreatedException)。 1.エラー発生内容 msedgedriverバージョン不一致エラー これは、EdgeやChromeのWebdriverであるmsedgedriver.exeやchro…
Seleniumを使用してセレクトタグ(要素)にアクセスする場合には操作したり状態取得できることがいろいろとありますが、セレクトタグの選択する要素であるすべてのoptionを取得したいということもあるのではないかと思います。 1.セレクトタグのoption取得…
今回はPythonとSeleniumを使って、Webスクレイピングの強力なテクニックであるXPathについて紹介します。 XPathはHTML要素を特定するための強力な言語であり、Webページからデータを抽出するのに役立ちます。 では、具体的な例を交えてXPathの使い方を紹介し…
seleniumを使用してWeb情報取得、操作を行っている場合に必要となることの1つにフレーム間移動があります。 Webサイトがフレーム構造となっており、親フレーム、子フレームなどの階層構造になっている場合があります。 そのような場合に該当する要素の情報…
Seleniumを活用して要素取得などをやり始めた頃に出るエラーの1つに「'WebDriver' objects has no attribute 'find_element_by_name'」というエラーがあります。 以下はその内容の説明と対処方法についてになります。 目次 1.find_elementの書式について …
PythonでSeleniumを利用してWebサイトへウインドウアクセスする場合には、まずは、対象のウインドウを表示させるところからはじまります。 その後、画面内の要素の取得などを行いますがそれらについては、過去記事で記載しました。 kuku81kuku81.hatenablog.…
画面操作のRPA化を行うような場合にはSeleniumなどのライブラリを使用して行うことになります。 その中で画面操作に関しては、対象のウインドウを表示させ、操作したい要素を取得するところからはじまりますが、それについては、以下の過去記事などでも紹介…
Pythonにてブラウザの操作などを行っている時に、各要素に対してキー入力操作を行いたい場合があります。 そのような時には「send_keys」を使用します。 以下ではプログラム上での「send_keys」の使用方法を説明します。 1.ブラウザの要素へのキー入力方法…
今回はPython、Seleniumで新しいタブを開く方法の説明になります。 新タブはjavascriptの実行によりwindow.openを使用することで開くことができます。 尚、Seleniumのバージョンアップでウェブドライバーの設定方法が変わったこともあり、以下の例はSelenium…
Seleniumを使用してWeb情報取得、操作を行っている場合に必要となることの1つにフレーム間移動があります。 Webサイトがフレーム構造となっており、親フレーム、子フレームなどの階層構造になっている場合があります。 そのような場合に該当する要素の情報…
ウェブサイトからデータをスクレイピングする場合、PythonとSeleniumの組み合わせは 便利です。 Seleniumはウェブブラウザでの操作を自動化するための強力なツールです。 今回は、PythonとSeleniumを使用してウェブサイトをスクレイピングする際にJavascript…
Seleniumを使用してスクレイピングしている場合の話ですが、ウェブドライバーから見て新規ウインドウが追加になった時に、新しいウインドウハンドルは必ずしもブラウザのドライバのハンドル(window_handles)の末尾に追加されるわけではないようです。
PythonでSeleniumを使用してWebサイトへのアクセスをする場合に必要になってくる機能の1つにウインドウの遷移(切替)があります。 Webサイト上でボタンなどをクリックした時に新規ウインドウが別タブ、別ウインドウとして開いた時は、自driverが操作できる…
今回は、Python、seleniumでのウインドウハンドル取得方法についての説明になります。 ウインドウハンドルとはウインドウごとに割り当てられている識別情報のことですが、seleniumでは、ウインドウの切替を行う場合には、この番号を使用して、switch_to_wind…
Pythonでseleniumを利用してウインドウアクセスする場合には、まずは、対象のウインドウを表示させるところからはじまります。 ということで、今回は、対象のウインドウのURLからウインドウの表示のさせ方とその後のウインドウのURLとタイトル取得方法につい…
Seleniumを使用してスクレイピングを行っている場合に、javascriptで動的に作成されているページに遭遇します。 そのような場合に、javascriptを実行する方法について記載します。 目次 1.SeleniumからJavascriptを実行する方法 2.実行例 1.Seleniumか…
Amazon Fire TV stick上からアプリをダウンロードする方法についてです。 やり方はとても簡単です。 ホーム画面やメニュー画面から「アプリ」を選択すると、ダウンロードする事が可能なアプリのアイコンの一覧が表示されます。 ダウンロードしたいアプリを選…
Fire TV Stickをセットアップする方法についてです。 基本的にはFire TV Stick をテレビに接続し、画面に表示される手順に従って設定を完了します。 リンク 1.Fire TVリモコンに電池を入れます。 2.Fire TV StickをテレビのHDMIポートに接続します。 3…
導入 まだまだハードルが高いとは思いますが世界ではスポーツの試合などにもオンラインブックメーカーが普及しています。 現在実施中のアジアカップはグループステージ2試合とラウンド16がDAZN独占放送でそれ以外の試合は地上波とDAZNの並列放送となっていま…
最近使用しているPCの1台に問題が発生しインターネット接続ができなくなりました。 「プライマリDNSサーバーと通信できません」というエラー内容があり、DNSサーバーとの通信がうまくいっていないということだったので前回の記事でその場合の代替方法とし…