2016-06-23 13 views
0

Imフォントタグが含まれているかどうかをチェックし、tbodyがあればチェックするために、Pythonでseleniumを使用しています。フォントがfontタグに含まれているかどうかをチェックする

htmlコード:

<table width="100%" border="0" cellspacing="1" cellpadding="1" bgcolor="#000000" height="80"> 
    <tbody> 
     <tr bgcolor="#666699"> 
      <td height="17" bgcolor="#CCCC99"> 
       <font size="2"><b><font face="Arial, Helvetica, sans-serif">PARTY 1</font></b></font> 
      </td> 
     </tr> 
     <tr> 
      some html code... 
     </tr> 
    </tbody> 
</table> 

あなたが見ることができるように、これは私はそれにので、TBODY要素を取り戻す場合PARTY 1を持っている場合は、HTMLページで確認する必要がある例です。 同じ方法で記述された他のテーブルがあるので、idを使って要素を取得する方法がないと言います。 私はすでに//font[contains(.PARPY1 ')]を使って試してみましたが、うまくいきませんでした。

セレンを使い、バック??

+0

'' font[contains(.,'PARTY 1 ')] 'は、少なくとも' font'要素を正しく見つけるべきです。何かエラーがありましたか? – alecxe

答えて

0

'PARTY 1' のテキストとFONTタグを含むこのXPathのリターンTBODYタグ:

//tbody[.//font[contains(.,'PARTY 1')]]

+0

これは、フォントタグの開始と終了の間のテキストをテキストとして認識しないので、テキストとして認識しません。 –

+0

'contains(。、 'PARTY 1')'を 'contains(text() 、 'パーティ1') '。私は完全にはそれについて – RemcoW

+0

もよくわからないが、私はこのテキストがタグではなく、テキストではないことを理解しているので、これは私がテキスト()タグを使用して文字列を含む場合、 –

0

まずel = driver.find_element_by_xpath('insert xpath here')を使用してフォントの要素を取得し、テキストを取得するためにel.textを使用しています。コードは次のようになるはずです:

el = driver.find_element_by_xpath('insert xpath of font tag here') 

if el.text == 'PARTY 1': 
    return driver.find_element_by_xpath('insert xpath of tbody here') 
関連する問題