python selenium 如何仅在功能可用时 execute_script

python selenium how to execute_script only when function is available

我想做 driver.execute_script('getDate();')

此函数getDate()定义在网页javascript中。如何确保首先加载函数定义?否则我会收到一条错误消息 javascript error: no such function...

更新:我的用例是有一个日期选择器元素在某个时候调用这个函数。我想直接 get/set 使用此函数的日期,而不是编写代码来查找日期选择器元素,单击日、月、年等我觉得会很复杂

您可以尝试使用等待直到以下内容:

// waituntil
while (typeof getDate !== "function") {
  task(i); // timeout
}

function task(i) {
  setTimeout(function() {
      // Add tasks to do
  }, 2000 * i);
}

// now call getDate
getDate();