首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从网页解析“名”时遇到麻烦

从网页解析“名”时遇到麻烦
EN

Stack Overflow用户
提问于 2017-06-19 17:46:03
回答 2查看 59关注 0票数 3

如何从脚本中的目标页面获得“名字”。我尝试了如下所示,但是它引发了以下错误:

代码语言:javascript
运行
复制
"selenium.common.exceptions.InvalidSelectorException: Message: invalid selector: The result of the xpath expression "//div[@class="div_input_place"]/input[@id="txt_name"]/@value" is: [object Attr]. It should be an element."

但是,“Name”在其中所指的元素是:

代码语言:javascript
运行
复制
<div class="div_input_place">
                                                <input name="txt_name" type="text" value="CLINTO KUNJACHAN" maxlength="20" id="txt_name" disabled="disabled" tabindex="2" class="aspNetDisabled textboxDefault_de_active_student">
                                            </div>

到目前为止我尝试过的脚本:

代码语言:javascript
运行
复制
from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get("https://www.icaionlineregistration.org/StudentRegistrationForCaNo.aspx")
driver.find_element_by_id('txtRegistNo').send_keys('SRO0394294')
driver.find_element_by_id('btnProceed').click()
time.sleep(5)
name = driver.find_element_by_xpath('//div[@class="div_input_place"]/input[@id="txt_name"]/@value')
print(name.text)
driver.quit()
EN

Stack Overflow用户

回答已采纳

发布于 2017-06-19 17:48:48

Selenium不支持这种语法。XPath表达式应该只返回WebElement,而不是属性值或文本。试着使用下面的代码:

代码语言:javascript
运行
复制
name = driver.find_element_by_xpath('//div[@class="div_input_place"]/input[@id="txt_name"]').get_attribute('value')
print(name)
票数 3
EN
查看全部 2 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44636853

复制
相关文章

相似问题

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