'How to wait for translated text to appear in DeepL.com
After entering original text in DeepL, it takes 1-2 sec for translated text to appear.
I'm unable to get translated text with TimeoutException.
I've tried to Synchronize using:
from selenium.webdriver.support import expected_conditions as EC
# ...
# ...
# ...
WebDriverWait(driver, 10).until_not(EC.text_to_be_present_in_element((By.XPATH, "//div[@id='target-dummydiv']"), "\r\n"))
translatedText = driver.find_element(By.XPATH, "//div[@id='target-dummydiv']").text
Checking for non-empty translated text:
WebDriverWait(driver, 10).until(self.IsTranslatedTextNotEmpty)
translatedText = driver.find_element(By.XPATH, "//div[@id='target-dummydiv']").text
def IsTranslatedTextNotEmpty(self, driver: WebDriver):
translatedText = driver.find_element(By.XPATH, "//div[@id='target-dummydiv']").text
return len(translatedText) > 0
doesn't work.
Note: Synchronization using time.sleep(5) works.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|
