我无法找到带有href链接的带有锚标签的元素(失败者标签中的每月链接-检查所附图片)。正在获取NoSuchElementFound异常。已经尝试使用javascript执行程序并等待。
HTML:
<div style="width:50%;font-size:14px;float:right;">
<h2 class="f16 bold">Losers</h2>
<div class="tabs">
<a href="//money.rediff.com/losers/bse/daily">Daily</a>
</div>
<div class="tabs">
<a href="//money.rediff.com/losers/bse/weekly">Weekly</a>
</div>
<div class="tabs">
<a href="//money.rediff.com/losers/bse/monthly">Monthly</a>
</div>
</div>
答案 0 :(得分:0)
您可以尝试使用xpath查找组件。试试下面的代码。这可能对您有帮助
stu
答案 1 :(得分:0)
在这种情况下,硒的最佳实践是使用linkText(org.openqa.selenium.By.linkText),您可以在a标签内传递文本,然后返回equals匹配项。为了正确使用,您还可以使用链,这是一个简单的示例:
library(tidyverse)
library(wrapr)
df %.>%
ggplot(data = ., aes(
x = Urbanisation_index,
y = Canopy_Index,
group = Urbanisation_index
)) +
stat_boxplot(
geom = 'errorbar',
width = .25
) +
geom_boxplot() +
geom_line(
data = group_by(., Urbanisation_index) %>%
summarise(
bot = min(Canopy_Index),
top = max(Canopy_Index)
) %>%
gather(pos, val, bot:top) %>%
select(
x = Urbanisation_index,
y = val
) %>%
mutate(gr = row_number()) %>%
bind_rows(
tibble(
x = 0,
y = max(.$y) * 1.15,
gr = 1:8
)
),
aes(
x = x,
y = y,
group = gr
)) +
theme_light() +
theme(panel.grid = element_blank()) +
coord_cartesian(
xlim = c(min(.$Urbanisation_index) - .5, max(.$Urbanisation_index) + .5),
ylim = c(min(.$Canopy_Index) * .95, max(.$Canopy_Index) * 1.05)
) +
ylab('Company Index (%)') +
xlab('Urbanisation Index')
这是一个简化的版本,您可以通过服务员检查等对它进行改进。
答案 2 :(得分:0)
<a href="foo">
的简单xpath示例
"//a[contains(@href,'foo')]"
答案 3 :(得分:-1)
要对元素损失->每月上的click()
,因为所需元素位于<iframe>
中,因此您必须:
您可以使用以下基于 Python 的解决方案:
代码块:
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
driver = webdriver.Firefox(executable_path=r'C:\Utility\BrowserDrivers\geckodriver.exe')
driver.get("https://money.rediff.com/losers/bse/monthly")
WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.XPATH,"//iframe[@id='logwatch']")))
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//h2[contains(., 'Losers')]//following::div[@class='curLink tabs']/a[contains(., 'Monthly')]"))).click()