自社サイトの操作の自動化をしたい
ここに質問の内容を詳しく書いてください。
python seleniumで、システムの提携操作の自動化(入力操作)をしたい。
大体できたが、
1段階目のメニューで、ある選択肢("マスタ")をクリック
その下に2つの選択肢が出る(2段階目)
そこで1つ目の選択肢("マスタ-1")にマウスオーバーする( マウスを移動)
するとその右に3段階目の選択肢("見込顧客マスタメンテ")が出る。
そこで選択肢を選択する→画面遷移
という流れで、
マウスオーバーのところだけできない。
手動でマウスオーバーしたら、あとは出てくる3段階目の選択肢が自動で選択されて先へ進んでいく。
自動でマウスオーバーできるようにしたい
発生している問題・エラーメッセージ
マウスオーバーされない
該当のソースコード
python
1import gspread 2from oauth2client.service_account import ServiceAccountCredentials 3from selenium import webdriver 4from selenium.webdriver.common.by import By 5from selenium.webdriver.common.keys import Keys 6import time 7#マウスオーバー処理に必要なライブラリ 8from selenium.webdriver.common.action_chains import ActionChains 9 10from selenium.webdriver.support.ui import WebDriverWait 11from selenium.webdriver.support import expected_conditions 12from selenium.webdriver.support.ui import Select 13import datetime 14 15from selenium.webdriver.support.select import Select 16 17from pykakasi import kakasi 18 19 20 21kakasi = kakasi() 22kakasi.setMode('J', 'H') #漢字からひらがなに変換 23kakasi.setMode("K", "H") #カタカナからひらがなに変換 24conv = kakasi.getConverter() 25#str = '東京タワー' 26#print(conv.do(str)) 27 28 29 30# chromedriver.exeがある場所 31driver_path = "driver/chromedriver.exe" 32 33 34 35# webdriverの作成 36driver = webdriver.Chrome(executable_path=driver_path) 37 38# 要素が見つからない場合は10秒待つように設定 39driver.implicitly_wait(10) 40 41 42 43# www.google.co.jpを開く 44driver.get("https:XX") 45driver.maximize_window() 46 47 48driver.find_element(By.ID,"username").send_keys("XX") 49 50driver.find_element(By.ID,"password").send_keys("XX") 51 52driver.find_element(By.ID,"btn-login-employee").click() 53driver.maximize_window() 54 55 56 57driver.find_element(By.LINK_TEXT, "マスタ").click() 58 59#以下、コメントアウトしている部分が、動かない 60 61#main_menu_box = driver.find_element(BY.XPATH,'//li[text()="マスタ-1"]') 62#マウスオーバーを使うための宣言みたいなもの 63#actions = ActionChains(driver) 64#マウスオーバー処理 65#actions.move_to_element(main_menu_box).perform() 66 67#以下、3段階目のメニューの処理へ進む 68driver.find_element(By.LINK_TEXT, "見込顧客マスタメンテ").click() 69 70・・・処理続く 71 72---------------------- 73サイトのHTMLの部分 74 75 <li class="dropdown hide-lv1-menu open"> 76 <a id="dLabel" role="button" data-toggle="dropdown" data-target="#" href="https://XX/e001q#" aria-expanded="true">マスタ<span class="caret"></span></a> 77 <ul class="dropdown-menu multi-level" role="menu" aria-labelledby="dropdownMenu"> 78 <li class="dropdown-submenu"><a tabindex="-1" href="https://XX/e001q#" style="border-left-color: rgb(255, 255, 255);">マスタ-1</a> 79 <ul class="dropdown-menu" style="display: block;"> 80 <li><a href="https://XX/m101i" style="border-left-color: rgb(255, 255, 255);">見込顧客マスタメンテ</a></li> 81 <li><a href="https://XX/m102i" style="border-left-color: rgb(255, 255, 255);">顧客マスタメンテ</a></li> 82 <li><a href="https://XX/m102q" style="border-left-color: rgb(255, 255, 255);">顧客マスタ検索</a></li> 83 84
試したこと
Xpathを様々に書き換えて試した
1層目の選択肢をクリックした後、同じ1層目の別の選択肢をクリックするようにしても、動かないので、1層目の選択肢をクリックした段階で、何かが変わっているのかもしれない。
ここに問題に対して試したことを記載してください。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー