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

Python3.x已知网页文字位置如何提取指定变量及seek报错处理

问题原因

seek()和readline()是Python中文件类对象的专属方法,你代码里通过elem.get_attribute("outerHTML")获取到的r是字符串类型,原生没有这两个方法,因此触发AttributeError报错。

解决方法

方案1:适配现有逻辑,使用字符串切片操作

如果要保留你原有基于字符偏移量提取内容的逻辑,直接替换seek+readline的操作为字符串切片即可:

elem = driver.find_element_by_xpath("//*")
r = elem.get_attribute("outerHTML")
aa1 = "text-xlarge text-semibold text-primary text-uppercase"
gr = r.find(aa1)
gr = gr + 55
# 从偏移位置gr开始截取,取第一行内容
target_line = r[gr:].splitlines()[0]
print(target_line)

方案2:更稳定的Selenium直接定位方案(推荐)

你要找的内容属于携带指定class属性的元素,不需要拉取整页HTML再手动切片,直接用XPath定位对应元素即可,准确率和效率更高:

# 直接定位携带目标class的元素
target_elem = driver.find_element_by_xpath('//*[contains(@class, "text-xlarge text-semibold text-primary text-uppercase")]')
# 输出元素文本内容
print(target_elem.text)
# 如果需要元素的完整HTML代码,可替换为下行
# print(target_elem.get_attribute("outerHTML"))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 23:30:04