Web クローリング中に HTML 要素を見つけることはできません。この要素はサイト検査ツールに表示されます
P粉225961749
P粉225961749 2023-09-19 12:41:46
0
1
574

この URL からすべてのテーブルのタイトルをクロールしようとしています: https://www.nature.com/articles/s41586-023-06192-4

この HTML 要素は Web サイトで見つかります:

リーリー

このタイトルは見つからないため、クロールできません。 HTML スクリプトをコンソールに出力しても、この要素が見つかりません。

次のコードを使用して HTML スクリプトを出力します:

リーリー

BeautifulSoup のクロール機能を使用します:

リーリー

Selenium のクローリング機能を使用します:

リーリー

Selenium と BeautifulSoup を使用して Web サイトをクロールしようとしています。 iframeを確認してみました。 ページが完全にロードされることを確認するために、フェッチ操作を 40 秒遅らせました。 GPT4でもこの問題は解決できません。

P粉225961749
P粉225961749

全員に返信(1)
P粉920485285

つまり、使用したコードは問題ないようですが、思い浮かぶ問題は、Web サイトが JavaScript または XHR 呼び出しを介してクロールしたい要素を読み込んでいる可能性があるため、リクエスト ライブラリを使用してリクエストを送信すると、その要素を取得できません。

この問題を解決する方法は、Selenium を使用し、Selenium で Web サイトを開き、ページのソース コードを bs4 にロードして、コードが正常に動作するようにすることです。

注: Web サイト全体がロードされたら、ページのソース コードを bs4 にロードします。この Web サイトのコンテンツを表示するにはログインが必要であるため、Selenium を使用してログイン関数を作成する必要もあります。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!