python - 无法解析网页中的某些文本
问题描述
我在 python 中编写了一个脚本,使用 selenium 从网页中抓取一些文本。我想在填写输入框时生成的文本。我的脚本可以以正确的方式填写并且可以填充值。但是,它无法解析文本。我该怎么做?
这是我迄今为止尝试过的:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome()
wait = WebDriverWait(driver, 10)
driver.get("http://dev.delshlearning.com.au/test.php")
wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR,"#AM"))).send_keys("`(2(3^5-sqrt(3)))/2`",Keys.RETURN)
item = wait.until(EC.visibility_of_element_located((By.CSS_SELECTOR,"#MQ"))).text
print(item)
driver.quit()
该send_keys()
参数已在脚本中填写以供您考虑。
解决方案
它将文本值存储在属性中value
。这应该有效:
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support import expected_conditions as EC
driver = webdriver.Chrome()
wait = WebDriverWait(driver, 10)
driver.get("http://dev.delshlearning.com.au/test.php")
# I changed your locater to ID since it's a little more clear
wait.until(EC.visibility_of_element_located((By.ID,"AM"))).send_keys("`(2(3^5-sqrt(3)))/2`",Keys.RETURN)
item = wait.until(EC.visibility_of_element_located((By.ID,"MQ"))).get_attribute('value')
print(item)
driver.quit()
推荐阅读
- python - 在列表中查找第一个元素和索引匹配条件
- python - OpenGL GL_POLYGON 仅在顺时针绘制时有效?
- java - JAVA 的 VS 代码设置,不断为 Java 苦苦挣扎:gettingStarted
- angular - 容器大小更改时打开图层地图重新加载
- sql - 查询以包括第一条记录和最后一条记录以仅显示一个输出
- javascript - 可以通过命令运行应用程序的 Discord 机器人
- python - AttributeError:“动物”对象没有属性“get_name”
- javascript - 提高 javascript 中多字符串搜索的性能
- powershell - 无法从 Powershell API 访问来自 Invoke-RestMethod 的数据
- python - Python:查找 substring1,如果不存在则查找 substring2