
No.3ベストアンサー
- 回答日時:
ちょっと認識が間違っています。
> 1. 問題の画面を表示した後、十分待機して次のステートメントで表示したもの print(driver.page_source)
これが、画面に今表示されているページのHTMLです。
> 2. Chromeの右クリックでの[ページのソースを表示]によるもの
これは、最初にWebサーバーから取得したHTMLです。多くのページはその後、JavaScriptが動作してHTML書き換えて、書き換えた結果が 1 のHTMLです。
Seleniumを使ったプログラムの開発は、driver.get(URL)したあとで、一旦プログラムを中断し(デバッガーを使うとか、input("go next") 等を実行して入力待ちで止めるとか)、その時のブラウザ画面で「開発者ツール」を起動して(ChromeだとF12キーを押す)、開発者ツール画面でHTML(概ね上記の1相当)を見てそれを元にコーディングします。
正確に言うと、「画面に今表示されているページのHTML」は、driver.page_sourceのHTMLではなくて、開発者ツールで参照できるHTMLです。driver.page_sourceのHTML、つまり、Seleniumでdriver.find_element~~で見つけられる物は、それからiframeやシャドウDOMの中味を除いた物になります。
画面や開発者ツールの中はあるけど、その瞬間のdriver.page_sourceに無いものは、それらの中にあるタグかも知れないので、その中を探すコードに修正する必要がありますので、その場合は、iframeやシャドウDOMについて調べましょう。
サポートありがとうございます。
初心者の私に貴重な知識を与えて頂きました。
初心者故に回答頂いた内容はまだ良く理解できていません。
単刀直入に質問させて頂きます。
先の2に存在する下記ソースの文字列 "2023年12月11日現在" を1から取得することは可能ですか?
可能であれば、その方法をご教示お願いします。
<table width="600" border="0" cellpadding="2" cellspacing="0">
<tr>
<td align="right"><font size="-1">2023年12月11日現在<br>
<br></font></td>
</tr>
</table>
よろしくお願いします、
No.2
- 回答日時:
こんにちは
事象だけしか情報がないので、原因の特定は難しいと思いますが・・
ありそうなのは、取得したい要素が、あとからスクリプト等で生成されるものである場合、スクリプトの実行完了前に取得しようとすれば、要素は(まだ存在しないので)見つからないことになります。
あるいは、単純にソースの読み込みに時間がかかっているような場合、それを待たなければ同様のことが起こり得ます。
当該ページのソースを確認すれば、どちらのケースの可能性であるかは判断できるでしょう。
以下、ご参考にでもなれば・・
https://www.fenet.jp/dotnet/column/language/7851/
https://blog.ikedaosushi.com/entry/2018/08/08/00 …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- アプリ Edgeを操作するアプリについて 4 2023/05/11 22:48
- Visual Basic(VBA) VBA: HTTPでのスクレイピング 2 2021/12/28 21:14
- Visual Basic(VBA) Edge操作のアプリが例外発生に 1 2023/03/12 21:22
- その他(プログラミング・Web制作) pythonでのカーソル移動がずれる 2 2023/07/30 08:51
- オープンソース Pythonのコードをexe化 1 2023/07/03 08:01
- Visual Basic(VBA) VBAのエラーについて 2 2023/08/02 17:46
- Visual Basic(VBA) excel vbaでselenium basic 3 2022/10/02 12:35
- Chrome(クローム) Webサイトの表示崩れの原因と対策 1 2022/08/01 23:16
- その他(プログラミング・Web制作) TwitterAPIを使用せずに自動ツイートする方法を知りたい。考え方としてはブラウザを擬似操作して 2 2023/02/02 17:16
- ドメイン・サーバー・クラウドサービス 自作サイトをサーバーにアップロードしたのですが… 2 2022/11/08 18:12
このQ&Aを見た人はこんなQ&Aも見ています
-
それもChatGPT!?と驚いた使用方法を教えてください
仕事やプライベートでも利用が浸透してきたChatGPTですが、こんなときに使うの!!?とびっくりしたり、これは画期的な有効活用だ!とうなった事例があれば教えてください!
-
何回やってもうまくいかないことは?
みなさんには、何回やってもうまくいかないことはありますか?
-
モテ期を経験した方いらっしゃいますか?
一生に一度はモテ期があるといいますが、みなさんどうですか? いまがそう! という方も、「思い返せばこの頃だったなぁ」という方も、よかったら教えて下さい。
-
洋服何着持ってますか?
洋服を減らそうと思っているのですが、何着くらいが相場なのかわかりません。
-
思い出すきっかけは 音楽?におい?景色?
記憶をふと思い出すきっかけは 音楽、におい、景色 どれですか?
-
python エラー
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・一番好きなみそ汁の具材は?
- ・泣きながら食べたご飯の思い出
- ・「これはヤバかったな」という遅刻エピソード
- ・初めて自分の家と他人の家が違う、と意識した時
- ・いちばん失敗した人決定戦
- ・思い出すきっかけは 音楽?におい?景色?
- ・あなたなりのストレス発散方法を教えてください!
- ・もし10億円当たったら何に使いますか?
- ・何回やってもうまくいかないことは?
- ・今年はじめたいことは?
- ・あなたの人生で一番ピンチに陥った瞬間は?
- ・初めて見た映画を教えてください!
- ・今の日本に期待することはなんですか?
- ・集中するためにやっていること
- ・テレビやラジオに出たことがある人、いますか?
- ・【お題】斜め上を行くスキー場にありがちなこと
- ・人生でいちばんスベッた瞬間
- ・コーピングについて教えてください
- ・あなたの「プチ贅沢」はなんですか?
- ・コンビニでおにぎりを買うときのスタメンはどの具?
- ・おすすめの美術館・博物館、教えてください!
- ・【お題】大変な警告
- ・洋服何着持ってますか?
- ・みんなの【マイ・ベスト積読2024】を教えてください。
- ・「これいらなくない?」という慣習、教えてください
- ・今から楽しみな予定はありますか?
- ・AIツールの活用方法を教えて
- ・最強の防寒、あったか術を教えてください!
- ・歳とったな〜〜と思ったことは?
- ・モテ期を経験した方いらっしゃいますか?
- ・好きな人を振り向かせるためにしたこと
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
VBAでfunctionを利用しようとし...
-
お助けください!VBAのファイル...
-
VBA エクセル で FIND でのエラ...
-
On ErrorでエラーNoが0
-
VBA データ(特定値)のある最...
-
ApplicationとWorksheetFunctio...
-
【VBA】ワークブックを開く時に...
-
Excel VBA のFunctionプロシー...
-
Perlのエラーについてご教授く...
-
マクロで"#N/A"のエラー行を削...
-
【VBAエラー】Nextに対するFor...
-
ASPでこんなエラーが出たんです...
-
Pythonでの文字列からfloatへの...
-
マクロ エラー無視について
-
実行時エラー 438 の解決策をお...
-
Excel vbaについての質問
-
exitとreturnの使い分け
-
インポート時のエラー「データ...
-
文字列内で括弧を使うには
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
UserForm1.Showでエラーになり...
-
お助けください!VBAのファイル...
-
VBAでfunctionを利用しようとし...
-
【VBA】ワークブックを開く時に...
-
String""から型'Double'への変...
-
マクロで"#N/A"のエラー行を削...
-
文字列内で括弧を使うには
-
VBA データ(特定値)のある最...
-
On ErrorでエラーNoが0
-
LaTeXのエラーについて(コンパ...
-
Filter関数を用いた結果、何も...
-
ACCESSで値を代入できないとは?
-
Excel vbaについての質問
-
インポート時のエラー「データ...
-
ApplicationとWorksheetFunctio...
-
実行時エラー 438 の解決策をお...
-
VBでSQL文のUPDATE構文を使った...
-
pythonのopenpyxlについて
-
【Access】Excelインポート時に...
-
SQLでエラーです。
おすすめ情報
問題の画面は、その前の画面のボタンのクリックで表示され、前の画面とは別タブに表示されています。
表示画面のHTMLソースの内容とは下記のものです。
1. 問題の画面を表示した後、十分待機して次のステートメントで表示したもの
print(driver.page_source)
2. Chromeの右クリックでの[ページのソースを表示]によるもの
上記の2の内容は、当然表示されている画面のソースですが、1はそれとは全く異なる別ページのものと思われます。
アドバイスにより、[開発者ツール]を少し学習し、今までより踏み込んだ使い方をしてみました。
その結果、幸いに要素を取得することに成功しました。
サポートありがとうございました。