如何使用悬停查看交互式图形的代码(用于抓取)
How to View Code (for Scraping) of Interactive Graph with Hover
我想抓取一个交互式绘图,根据指针悬停的位置显示不同的信息。这个网站是我感兴趣的:https://www.pelotoncycle.com/workout/c52db950f5ec4fde85cb3997c52db8db
对于每一行,我想抓取将鼠标悬停在该行的不同部分上时出现在框中的信息。比如红线,从左边开始向右走,我想刮:
0.13 power 70.1
0.58 power 74.9
1 power 94.8
and so on, repeating for each line
我过去曾使用 python+Selenium 来抓取动态加载的网站,但我不确定如何处理这个特定问题。我已经尝试过,但没有成功找到代码中包含此信息的位置。它不在页面源 HTML 中。当我使用它们的检查元素功能时,我也无法使用 Firefox+Firebug 或 Chrome Canary 找到它。在尝试查找相关代码时,我能得到的最接近的是这样的:
<circle cx="213.69063545150502" cy="161.03099999999998" r="6.5" stroke="#000000" stroke-width="1" stroke-opacity="0.05" fill-opacity="1" fill="none">
不幸的是,这似乎是指直线上的圆圈,而不是悬停框中包含的实际信息。
对我应该尝试什么有什么建议吗?
发生的情况是,包含悬停的另一个元素覆盖在每个点的图表上。好消息是,对于每次悬停,都可以创建一个 CSS 选择器。悬停出现在性能图表的结尾 <g>
标记中,可以通过获取所有需要信息的点来收集数据,将鼠标悬停在每个点上,然后使用以下 CSS用于收集信息的选择器。
g>text[text-anchor='start'][font-weight=bold]
是的,这是一个缓慢的过程,但它有效。如果你愿意,你也可以使用 JavaScript 来获取你需要的数据,但这需要深入研究网站的 JS 代码。
我想抓取一个交互式绘图,根据指针悬停的位置显示不同的信息。这个网站是我感兴趣的:https://www.pelotoncycle.com/workout/c52db950f5ec4fde85cb3997c52db8db
对于每一行,我想抓取将鼠标悬停在该行的不同部分上时出现在框中的信息。比如红线,从左边开始向右走,我想刮:
0.13 power 70.1
0.58 power 74.9
1 power 94.8
and so on, repeating for each line
我过去曾使用 python+Selenium 来抓取动态加载的网站,但我不确定如何处理这个特定问题。我已经尝试过,但没有成功找到代码中包含此信息的位置。它不在页面源 HTML 中。当我使用它们的检查元素功能时,我也无法使用 Firefox+Firebug 或 Chrome Canary 找到它。在尝试查找相关代码时,我能得到的最接近的是这样的:
<circle cx="213.69063545150502" cy="161.03099999999998" r="6.5" stroke="#000000" stroke-width="1" stroke-opacity="0.05" fill-opacity="1" fill="none">
不幸的是,这似乎是指直线上的圆圈,而不是悬停框中包含的实际信息。
对我应该尝试什么有什么建议吗?
发生的情况是,包含悬停的另一个元素覆盖在每个点的图表上。好消息是,对于每次悬停,都可以创建一个 CSS 选择器。悬停出现在性能图表的结尾 <g>
标记中,可以通过获取所有需要信息的点来收集数据,将鼠标悬停在每个点上,然后使用以下 CSS用于收集信息的选择器。
g>text[text-anchor='start'][font-weight=bold]
是的,这是一个缓慢的过程,但它有效。如果你愿意,你也可以使用 JavaScript 来获取你需要的数据,但这需要深入研究网站的 JS 代码。