<p>确保在Selenium中使用<code>find_elements</code>(使用<strong>s</strong>检索所有值)。
根据您的样本,您应该使用:</p>
<pre><code>ar=[int(val.text) for val in driver.find_elements_by_xpath('//tr/td[3]')]
</code></pre>
<p>然后计算平均值(确保<code>import statistics</code>):</p>
<pre><code>print(statistics.mean(ar))
</code></pre>
<p>一段代码(带<code>LXML</code>):</p>
<pre><code>data = """your_html_data"""
import statistics
import lxml.html
tree = html.fromstring(data)
# create arrays (two ways of doing it, "ar1" is the one you should use if you work with Selenium)
ar1=[int(val.text) for val in tree.xpath("//tr/td[3]")]
ar2=[int(val) for val in tree.xpath("//tr/td[3]/text()")]
# display the arrays
print(ar1)
print(ar2)
# display the means
print(statistics.mean(ar1))
print(statistics.mean(ar2))
print(tree.xpath("sum(//tr/td[3]) div count(//tr/td[3])"))
</code></pre>
<p>最后一行是另一个选项,即:使用XPath直接计算平均值</p>
<p>输出:</p>
<pre><code>[12, 13, 14, 15, 16, 17]
[12, 13, 14, 15, 16, 17]
14.5
14.5
14.5
</code></pre>
<p>如果需要更健壮的XPath,可以使用:</p>
<pre><code>//tr/td[count(//th[.="Value"]/preceding-sibling::*)+1]
</code></pre>
<p><code>td</code>元素的计算位置索引相对于“Value”头的位置</p>