2016-11-10 14 views
0

クリック()機能を使用できないため、プルダウンメニューを開くことができません。 ウェブサイト上での作業:http://www.titleboxing.com/ 左上のナビタブを自動化するには、「手袋」をクリックしてください。最初の1つはボクシングTraning /スパークリング手袋です。そのリンクの 'click()'を自動化しますか?私は、要素by_XPath、by_CSS、およびリンクテキストを検索することによって 'click()'しようとしました。 Seleniumは要素がクリック可能でないことを返します。 そのリンク上で「クリック()」を自動化してページを移動するためにどのアプローチを使用すればよいか知っている人は誰ですか:http://www.titleboxing.com/gloves/training-sparring-boxing-glovesSeleniumを使った自動化のためにPython 3でclick()関数を実装しています。

+0

ショー//www.titleboxing: 'Python'コードがすでにセレンインポートwebdriverを ドライバ= webdriver.Chrome() driver.maximize_window() driver.implicitly_wait(30) driver.get(「HTTPから – Andersson

+0

を試してみました。 com/") print(driver.title) driver.find_element_by_css_selector( "。level-top> span")。クリック() – Alba

答えて

0

は、これが最善の方法ではありませんが、これはこのコードをwork.Try必要があります。

from selenium import webdriver 
from selenium.webdriver.common.action_chains import ActionChains 
from selenium.webdriver.common.by import By 
import time 


driver = webdriver.Chrome() 
url= "http://www.titleboxing.com/" 
driver.maximize_window() 
driver.get(url) 
time.sleep(2) 

#this is to close the popup 
try: 
    driver.find_element(By.CSS_SELECTOR,'.fancybox-item.fancybox-close').click() 
except: 
    pass 


action = ActionChains(driver) 
action.move_to_element(driver.find_element(By.CSS_SELECTOR,'.level-top>span')) 
action.click() 
action.perform() 
time.sleep(2) 

driver.find_element(By.CSS_SELECTOR,'.level1.nav-1-1.first>a').click() 
+0

それは動作します。どうもありがとう! ActionChainsモジュールは私には何か新しいものでした。手作業で、あなたは実際に手袋タブをクリックすることができます魔法使いは、中間ページに移動します:http://www.titleboxing.com/gloves。そのページからCategoryセクションのBoxing/Trainig/Sparring Gloverをクリックすることができます。これはActionChainsモジュールのエクスポートを避けるでしょう。しかし、なんらかの理由で私は「手袋」の自動化学で「クリック」できませんでした。このActionChainsモジュールは私には新しく、動作しています。今日は何か新しいことを学ぶ。再度、感謝します。 – Alba

+0

これを実行してください。http://stackoverflow.com/help/how-to-ask – thebadguy

0

ドロップダウンメニューの上にマウスカーソルを置くと、マウスカーソルをクリックする代わりに開く必要があります。だから、あなたが必要なドロップダウンメニューオプションを選択+マウスホバーを実行することを可能にするコードを以下試してください。

from selenium.webdriver.common.action_chains import ActionChains as chains  

drop_down_xpath = '//a[@class="level-top"]' 
option_xpath = '//span[text()="Boxing Training/Sparring Gloves"]' 
chain = chains(driver) 
chain.move_to_element(driver.find_element_by_xpath(drop_down_xpath)).move_to_element(driver.find_element_by_xpath(option_xpath)).click().perform() 
+0

まだ実行されていません。私はこのエラーメッセージを受け取りましたmsg: – Alba

+0

TypeError:move_to_element()missing 1必要な位置引数: 'to_element' – Alba

+0

ああ、ええ、申し訳ありません。更新しました。もう一度試してください – Andersson

関連する問題