首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Selenium Webdriver和Python在页面上使用多个图表来获取选择器中正确的高图表编号?

如何使用Selenium Webdriver和Python在页面上使用多个图表来获取选择器中正确的高图表编号?
EN

Stack Overflow用户
提问于 2018-01-20 08:03:46
回答 1查看 238关注 0票数 2

我正在测试一个使用highcharts的web应用程序。选择器看起来像这样,同一图表的高位图表编号总是不同的。例如:

代码语言:javascript
复制
#highcharts-4 >div:nth-child(1) > span > div > span

当一个页面上只有一个图表时,我执行以下操作,它可以完美地工作:

代码语言:javascript
复制
[id^='highcharts-'] > div:nth-child(1) > span > div > span

它选择第一个元素,其中id以字符串'highcharts-'开头,但是假设我在同一个页面上有几个图表,如何选择第二个和第三个元素呢?

例如,当有三个相同的图表时,每个图表上的相同元素将具有ID始终不同的以下选择器:

代码语言:javascript
复制
#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

我怎样才能抓住第二个和第三个呢?

EN

回答 1

Stack Overflow用户

发布于 2018-01-20 10:05:08

您应该能够使用该方法选择与您的选择器匹配的多个元素:

代码语言:javascript
复制
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

(您没有提到您正在对这些图表做什么,但在这里,我只是打印可能与之相关的任何文本)

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48351231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档