-1

jquery.treeview.js複数のネストされたブランチを使用しているサイトがあります。各ブランチには JavaScript ボタンがあります。

<a href="javascript:void(0);" id="show_link" class="show_links" onclick="$(this).parent().children('div#data_316')
.load('keyword_browse_ajax.php', {keyword_id:316,lp:'et',mode:'ajax'}); $(this).parent().children('div#data_316').toggle(); $(this)
.parent().children('a#hide_link').toggle(); $(this).toggle();" style="display: none; "><img src="http://pic.gif" alt="show"></a>

そして「空の」div:

<div id="data_316" style="background: whitesmoke; display: none; margin: 0px 0px 10px 0px; padding: 5px; line-height:150%;"></div>

「リンクを表示」をクリックすると、次のように入力されます。

<div id="data_316" style="background-color: rgb(245, 245, 245); margin: 0px 0px 10px; padding: 5px; line-height: 150%;
background-position: initial initial; background-repeat: initial initial; ">
Name O.;
 <a href="link.php" target="_blank">text1</a>; 1993, nr 1, p 1-20<br>
Name T.;
 <a href="link.php" target="_blank">text2</a>; 1994, nr 1, p 1-20<br>
</div>

Selenium を使用してツリーを解明し、新しく作成された div コンテンツを取得する方法はありますか?

4

2 に答える 2

2

私はセレンに慣れていないので、始めるにはいくつかのテストが必要でしたが、かなり簡単でした:

from selenium import webdriver

browser = webdriver.Chrome() # Get local session of Chrome
browser.get("http://www.somepage.com") # Load page

elem = browser.find_element_by_id("show_links") # Find javascript button
elem.click() # Click on the button that 'populates the div'
于 2012-09-21T15:51:13.127 に答える
0

ステップ1:

以下の特定の CSS セレクターを使用する必要がある場合は、指定された情報を使用して、次のように指定します。

リンクを表示するための CSS セレクター:

css=#show_link > img[src*='pic.gif']

次に、以下のメソッドを使用して上記の css をクリックします。

driver.find_element_by_css_selector("#show_link > img[src*='pic.gif']").click()

于 2014-04-04T09:30:25.443 に答える