Selenium を使用した Text と innerHTML の違い
Selenium では、要素からコンテンツを取得するために使用できるメソッドが 2 つあります。および .get_attribute("innerHTML")。似ているように見えますが、この 2 つは明確な違いがあります。
get_attribute("innerHTML")
.get_attribute("innerHTML") は、次の内部 HTML を取得します。すべてのタグとその中のテキストコンテンツを含む要素。このメソッドは、指定された名前のプロパティ値の取得を試み、それが見つからない場合は、同じ名前の属性値を返します。プロパティも属性も存在しない場合は、None が返されます。真理値 (true または false に等しい) はブール値として返され、その他の None 以外の値はすべて文字列として返されます。一方、要素の表示テキストのみを取得します。 HTML タグやその他の非テキスト コンテンツは無視されます。
属性とプロパティ
違いをさらに理解するには、次の属性とプロパティの区別を知ることが重要です。 HTML。ブラウザは HTML を解析するときに、タグから DOM オブジェクトを作成します。標準の HTML 属性は、これらの DOM オブジェクトのプロパティに自動的に変換されます。ただし、非標準属性には、.get_attribute() メソッドを介してのみアクセスできます。
innerHTML を使用する場合
必要な場合は .get_attribute("innerHTML") を使用してください。タグや埋め込みスクリプトまたは CSS を含む、要素内の HTML コンテンツ全体をキャプチャします。これは、複雑なコンテンツを抽出する場合に便利です。
テキストを使用する場合
要素の表示テキスト コンテンツのみに興味がある場合は、.text を使用します。 HTMLタグ。これは、ユーザーが入力したテキストを取得したり、画面に表示したりするためによく使用されます。
以上がSelenium: `text` と `get_attribute('innerHTML') – どちらのメソッドを使用する必要がありますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。