フレームスイッチ
むしろ異常な方法で私たちのwebdriverを使用中にフレーム/ IFRAMEは他のラベルとセレンでの位置付けは同じではありません。
私たちは、HTML文書に操作子フレーム/ iframe内に埋め込まれることになっている場合は、レンジwebdriverを埋め込まれた文書を切り替える必要があります。
では、どのよう範囲を切り替えるのですか?
多くの人々があるかもしれません初めてswitch_to_frame()メソッドを考えるが、Pycharmの内部でノックアウト、我々は、この方法は明らかに時代遅れで、この方法は、水平線上に塗装することが判明!
wd.switch_to_frame()
ここでは、セレンがフレームをスイッチングするための方法を提供し、(frame_reference)switch_to.frameを使用します
ここで、frame_referenceは、フレーム要素名や属性IDかもしれません。
例えば、IDのiframe要素「フレーム1」名または属性値「フレーム2」。
私たちは、次のコードスイッチを使用することができます
#ID为フレーム1 wd.switch_to.frame(' フレーム1 ' ) #の名为フレーム2 wd.switch_to.frame(' フレーム2 ')
また、切り替えることができます
wd.switch_to.frame(wd.find_element_by_tag_name(" IFRAME "))
我々は動作するIFRAMEに切り替えると、その後内側にその後の選択及びユーザインタフェース要素は、フレームで行われます。
この時点で、我々は我々が行うのですか、この時間の始まりをHTMLに切り替えたい場合は?我々は、次の方法を使用することができます
wd.switch_to.default_content()
マルチレイヤスイッチフレーム
フレームは、この時点でフレーム内にネストされている場合場合は、どのように行うことを想定されましたか?IDは、フレーム2のためのネストされたフレームIDを含む外枠フレーム1は、私はメインのHTMLネストされたフレームから入力されたと仮定されます
この時点で、私たちは道の層を切断することができます
#最初のフレームの中へ wd.switch_to.frame(「フレーム1 」) #第二枠に wd.switch_to.frame(「フレーム2 」)
我々はフレーム2、その後、カットバックフレーム1から欲しい今回は、あなたが使用することができます
wd.switch_to.parent_frame()
主な電流がすでにある場合は、親タグにメソッドが返す、この方法ではないHTML