You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Selenium中逐行打印XPath定位元素的文本内容

解决方案

首先修正原有代码的核心问题:find_element_by_xpath 返回的是WebElement对象,必须先通过.text属性拿到文本字符串,才能调用split方法拆分单词。

完整实现代码(for循环版本,符合你的需求)

# 获取目标元素并提取文本内容
element = driver.find_element_by_xpath('//*[@id="mw-content-text"]/div[1]/p[1]')
raw_text = element.text
# 拆分得到单词列表
word_list = raw_text.split()

formatted_lines = []
current_line_words = []

for idx, word in enumerate(word_list):
    current_line_words.append(word)
    # 每满10个单词,或遍历到最后一个单词时生成一行
    if len(current_line_words) == 10 or idx == len(word_list) - 1:
        formatted_lines.append(' '.join(current_line_words))
        current_line_words = []

# 拼接所有行,每行之间加换行
final_text = '\n'.join(formatted_lines)
# 输出查看效果
print(final_text)

简化写法(列表切片实现)

如果你想要更短的代码,可以直接用切片按步长分组,逻辑和上面的循环完全一致:

element = driver.find_element_by_xpath('//*[@id="mw-content-text"]/div[1]/p[1]')
word_list = element.text.split()
final_text = '\n'.join([' '.join(word_list[i:i+10]) for i in range(0, len(word_list), 10)])
print(final_text)

如果需要调整每行的单词数,只需把代码里的数字10替换为你想要的数值即可。

内容的提问来源于stack exchange,提问作者qweggry

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 19:45:03