Selenium + Python - inspecter l'image viaexecute_script
P粉899950720
P粉899950720 2024-04-03 09:32:15
0
1
378

Je dois vérifier qu'une image est affichée sur la page en utilisant du sélénium en python. Par exemple, examinons le logo dans le coin supérieur gauche de la page https://openweathermap.org/. J'utilise execute_script et mon code est :

def test_image(driver):
    driver.get('https://openweathermap.org/')
    time.sleep(10)
    image = driver.find_element(By.CSS_SELECTOR, "#first-level-nav > li.logo > a > img")
    print(image)
    print(driver.execute_script("return (typeof arguments[0].naturalWidth!=\"undefined\");", image))
    print(driver.execute_script("return (typeof arguments[0].naturalWidth>0);", image))
    print(driver.execute_script("return (arguments[0].naturalWidth);", image))

J'ai obtenu ce résultat :

True
False
431

Pourquoi typeof argument[0].naturalWidth>0False,而 arguments[0].naturalWidth431 ? Et l'image s'affiche correctement sur la page.

Mise à jour : Le code correct est :

print(driver.execute_script("return (arguments[0].naturalWidth>0);", image))

P粉899950720
P粉899950720

répondre à tous(1)
P粉765570115

typeof 运算符优先于 >

typeof 431     === "number"
"number"   > 0 === false
typeof 431 > 0 === false
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!