【发布时间】:2020-06-17 17:46:10
【问题描述】:
我正在尝试创建一个脚本,以使用 selenium 和 chrome 驱动程序从某个元素连续打印文本
当我运行这个脚本时一切正常
import time
from selenium import webdriver
chrome_path = r"C:\chromedriver.exe"
driver = webdriver.Chrome(chrome_path)
driver.get("https://www.tradingview.com/symbols/BTCUSD/?exchange=BITSTAMP")
price = driver.find_element_by_xpath("""/html/body/div[2]/div[4]/div/header/div/div[3]/div[1]/div/div/div""").text
print(price)
但是当我添加这样的循环时
import time
from selenium import webdriver
chrome_path = r"C:\chromedriver.exe"
driver = webdriver.Chrome(chrome_path)
driver.get("https://www.tradingview.com/symbols/BTCUSD/?exchange=BITSTAMP")
price = driver.find_element_by_xpath("""/html/body/div[2]/div[4]/div/header/div/div[3]/div[1]/div/div/div""").text
while True:
print(price)
time.sleep(1)
脚本在运行后立即关闭
我犯了一个菜鸟的错误吗?谁能帮帮我?
【问题讨论】:
-
是否有任何错误/异常?仅添加带有
print()和sleep()的无限循环将永远不会导致错误。如果 python 返回任何错误,请将它们添加到您的帖子中 -
你必须在循环内使用
find_element_by_xpath来获取新值 -
你在循环中有错误的缩进 - 也许这是你的问题。您应该在控制台/终端/cmd.exe 中运行代码以查看它是否显示任何错误消息。
标签: python python-3.x selenium automation selenium-chromedriver