我正在测试一个使用highcharts的web应用程序。选择器看起来像这样,同一图表的高位图表编号总是不同的。例如:
#highcharts-4 >div:nth-child(1) > span > div > span当一个页面上只有一个图表时,我执行以下操作,它可以完美地工作:
[id^='highcharts-'] > div:nth-child(1) > span > div > span它选择第一个元素,其中id以字符串'highcharts-'开头,但是假设我在同一个页面上有几个图表,如何选择第二个和第三个元素呢?
例如,当有三个相同的图表时,每个图表上的相同元素将具有ID始终不同的以下选择器:
#highcharts-4 >div:nth-child(1) > span > div > span
#highcharts-6 >div:nth-child(1) > span > div > span
#highcharts-8 >div:nth-child(1) > span > div > span我怎样才能抓住第二个和第三个呢?
发布于 2018-01-20 10:05:08
您应该能够使用该方法选择与您的选择器匹配的多个元素:
my_charts = driver.find_elements_by_css_selector("[id^='highcharts-'] > div:nth-child(1) > span > div > span")
for chart in my_charts:
print chart.text(您没有提到您正在对这些图表做什么,但在这里,我只是打印可能与之相关的任何文本)
https://stackoverflow.com/questions/48351231
复制相似问题