0

watir を使用して隠しリンクのマップを返すことは可能ですか? 私はいくつかの有用なドキュメントを見つけようとしましたが、ほとんど成功していません.

クラス、IDなどに関係なく、ページに隠されているリンクを返すのに十分な汎用性が必要です

style=display: none;

これは現在、表示されているすべてのリンクを返します

full_list = @driver.links.map{|a| a.href}

私は次のようなことをしたいと思います(私の構文はおそらくかなりずれています):

hidden_list = @driver.hiddens.map{:style, a => 'display: none;'} 

いい方法があれば教えてください!

ありがとう!

4

1 に答える 1

2

そうでないすべてのリンクを見つけて、visible?それらの href 属性を収集できます。

たとえば、次の html があるとします。

<a href="somewhere/visible">asdf</a>
<a style="display:none;" href="somewhere/invisible">asdf</a>
<a style="display:none;" href="somewhere/invisible2">asdf</a>

できるよ:

hidden_list = @driver.links.find_all{ |a| !a.visible? }.collect(&:href)
#=> ["somewhere/invisible", "somewhere/invisible2"]
于 2013-10-24T17:52:19.343 に答える