2011-08-05 6 views
0

これは重要な場合にはPerlにあります。私は崩壊して拡大するリンクのいくつかのリストを持っています。私はこの問題は、私はこれらの実際のリンクの名前のリストを取得する必要がある複数のものに対してセレンCSSセレクタを使用する

get_xpath_count('//li/a')

を使用してからがいくつあるかを知っています。私はxpathを使ってみましたが、多くの運が見つかりませんでしたし、CSSセレクタが助けてくれることを望んでいました。 [ - ]アイコンのリンクは、リストの最上部にリンクして、範囲エラーのうちに次の私はプリントアウトし

get_text('css=li a:nth-child('.$i.')'

使用してみました。私はよくCSSセレクタが馴染んでいないので、どんな助けも素晴らしいでしょう。私は、重要な情報を除外した場合、(私は疫病のようにPerlを避けるため、擬似コードで)

答えて

2

はこれを試してみてください、私に知らせてください。

list linkNames; 
count = selenium.get_xpath_count('//li/a'); 
for (i = 1; i <= count; i++) { 
    list.append(selenium.get_text('xpath=(//li/a)[' + i +']'); 
} 

注:

  • XPath式ほとんどのC言語のように、0からn-1ではなく1からnまでカウントします。
  • パターンのi番目の一致を選択するためのXPath形式は、pattern[i]ではなく、(pattern)[i]です。
  • Seleniumは(pattern)[i]ロケータがXPathであると仮定していませんので、xpath=で開始することが必要です。
関連する問題