将鼠标悬停在Selenium子菜单上

2024-09-29 21:51:58 发布

您现在位置:Python中文网/ 问答频道 /正文

Actions Menu 我的任务是自动提交表单(仅限公司访问),然后将结果导出到excel。我的代码确实单击“操作”菜单来激活下拉列表,但从那里它什么也不做。我需要将鼠标悬停在Using Selenium上,下面是一段代码,专门针对我需要的菜单: 1将鼠标悬停在“使用报表生成器打开” 2.'向下箭头两次到“导出” 3.'右箭头指向子菜单 4英尺向下箭头3x并单击“Excel”

elem4 = driver.find_element_by_id("m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_ctl01_t")
elem4.click()
actions = ActionChains(driver)
actions.move_to_element(elem4)
actions.perform()
elem4.send_keys(Keys.DOWN)
elem4.send_keys(Keys.DOWN)
elem4.send_keys(Keys.RIGHT)
elem4.send_keys(Keys.DOWN)
elem4.send_keys(Keys.DOWN)
elem4.send_keys(Keys.DOWN)
elem4.click()

下面是与“操作”菜单关联的HTML

^{pr2}$

我相信这是“导出”和“Excel”的HTML

<ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_Export" type="submenu" text="Export" callbackitem="true"><ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_Export_Label" type="label" menugroupid="2147483647" enabled="true" checked="false"></ie:menuitem><ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_XML" type="option" onmenuclick="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;XML&quot;);" text="XML file with report data" callbackitem="true" menugroupid="2147483647" enabled="true" checked="false" onmenuclick_original="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;XML&quot;);" text_original="XML file with report data" valorig="
"></ie:menuitem>
<ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_CSV" type="option" onmenuclick="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;CSV&quot;);" text="CSV (comma delimited)" callbackitem="true" menugroupid="2147483647" enabled="true" checked="false" onmenuclick_original="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;CSV&quot;);" text_original="CSV (comma delimited)" valorig="
"></ie:menuitem>
<ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_PDF" type="option" onmenuclick="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;PDF&quot;);" text="PDF" callbackitem="true" menugroupid="2147483647" enabled="true" checked="false" onmenuclick_original="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;PDF&quot;);" text_original="PDF" valorig="
"></ie:menuitem>
<ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_EXCELOPENXML" type="option" onmenuclick="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;EXCELOPENXML&quot;);" text="Excel" callbackitem="true" menugroupid="2147483647" enabled="true" checked="false" onmenuclick_original="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;EXCELOPENXML&quot;);" text_original="Excel" valorig="
"></ie:menuitem>
<ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_IMAGE" type="option" onmenuclick="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;IMAGE&quot;);" text="TIFF file" callbackitem="true" menugroupid="2147483647" enabled="true" checked="false" onmenuclick_original="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;IMAGE&quot;);" text_original="TIFF file" valorig="
"></ie:menuitem>
<ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_WORDOPENXML" type="option" onmenuclick="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;WORDOPENXML&quot;);" text="Word" callbackitem="true" menugroupid="2147483647" enabled="true" checked="false" onmenuclick_original="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;WORDOPENXML&quot;);" text_original="Word" valorig="
"></ie:menuitem>
<ie:menuitem id="m_sqlRsWebPart_RSWebPartToolbar_ctl00_RptControls_RSActionMenu_MHTML" type="option" onmenuclick="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;MHTML&quot;);" text="MHTML (web archive)" callbackitem="true" menugroupid="2147483647" enabled="true" checked="false" onmenuclick_original="$find(&quot;m_sqlRsWebPart_ctl00_ReportViewer&quot;).exportReport(&quot;MHTML&quot;);" text_original="MHTML (web archive)" valorig="
"></ie:menuitem>
</ie:menuitem>

Tags: textidtruefindieoriginalmenuitemquot
1条回答
网友
1楼 · 发布于 2024-09-29 21:51:58

尝试使用以下代码-

actions_menu = driver.find_element_by_xpath("//*[@alt='Open Menu']").click()
export = driver.find_element_by_xpath("//*[@text='Export']")
excel = driver.find_element_by_xpath("//*[@text='Excel']")
actions = ActionChains(driver)
actions.move_to_element(export).click(excel).perform()

相关问题 更多 >

    热门问题