当前位置: 首页 > 知识库问答 >
问题:

C#刮项目点击事件问题

穆文斌
2023-03-14

我是C#scraping的新手,我已经建立了一个小型C#scraping项目并尝试运行。我要添加一个点击事件,因为点击事件后会打开下拉列表(显示足球比赛分数,例如:3-0)。这是网页的html结构:

<table class="matches date_matches grouped">
    <thead></thead>
    <tbody>
        <tr id="date_matches-16-53658" class="group-head expanded loaded" stage-value="1">
            <th colspan="5">
                <h3>
                    <span class="flag_16 left_16 france_16_left">France-Ligue 1</span>
                </h3>   
            </th>
        </tr>
        <tr>
            ...
        </tr>
    </tbody>
</table>

我将用selenium实现这个功能

using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
...
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10);
IWebElement element = driver.FindElement(By.XPath("//table[@class='matches']/tbody/tr[@class='group-head']/th[1]/h3/span"));
((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].click();", element);
...

但它不起作用:错误-

var ele = driver.FindElement(By.XPath("//span[@class ='flag_16 left_16 france_16_left']"));
ele.Click();

它说:“元素不可交互”我很困惑,我无法在标记上实现这个点击事件。期待这个问题有一个好的解决方案。问候...

共有1个答案

公西国发
2023-03-14

确保先单击打开下拉列表。然后我通常等到元素显示在下拉列表中,然后单击它。此外,您的xpath在ele版本中也很好。我不确定span中的其他值显示的类名是什么?我想他们都是独一无二的?如果没有,请尝试按名称查找-

 //span[contains(text(), 'France-Ligue 1')]
 类似资料:
  • 1.可以扩大点击范围吗?现在只能点击绿色的进度条。 2.红色的部分也是echarts 出来的canvas

  • 我正在尝试将单击事件绑定到搜索按钮和提交功能,但有一个错误: {hotels:Array(6)}resultscomponent.html:11 ERROR typeerror:_co.submit不是object.eval中的函数 [作为handleEvent](resultscomponent.html:15) Blockquote位于core.js:42925,位于htmlButtonEle

  • 第一次调用时,激发一次 第二次调用时,会激发两次 等等 编辑: 下面是一个jsfiddle示例(如下所示)。 要复制,请单击按钮,然后单击,然后单击一个并重复此过程 您将注意到,第二次执行该过程时,文本会加倍

  • 问题内容: 所以我有一个自定义ListView对象。列表项具有两个彼此叠放的textview,以及一个水平进度条,在我实际执行某项操作之前,我一直希望保持水平状态。最右边是一个复选框,仅在用户需要将更新下载到他们的数据库时才显示。通过将可见性设置为Visibility.GONE禁用复选框时,我可以单击列表项。当该复选框可见时,我无法单击列表中除复选框以外的任何内容。我已经进行了一些搜索,但没有找到

  • 当我们需要别人只能点选“原始英文版”或“简体中文版”中的其中一项时,我们通常会用到 !insertmacro StartRadioButtons 这类的宏来控制单选,但是在 NSIS 的例子中,它们的操控都是在父项的情况下实行的,当我们在子项的环境中实现时,问题出现了,当我们为用户设想时,如果用户点选了父项“界面语言”,会造成子项选择丢失或者反选,这就跟我们原来设想的单选意图完全背道而驰了,那么我

  • 本文向大家介绍IOS setOnclick点击事件分析,包括了IOS setOnclick点击事件分析的使用技巧和注意事项,需要的朋友参考一下 在Android中点击事件是以setOnclick的形式进行设置的,用起来十分方便,而在ios中是以addTarget方式进行的,每次设置点击事件都需要声明一个新的方法,在大部分情况下显得未免有些麻烦。而且通常来说我们使用的最多的是TouchUpInsid