【问题标题】:Unable to locate element: {"method":"xpath","selector":"//*[@id="react-root"]/section/main/article/div[2]/div[1]/div/form/div[3]/div/label/input"} [duplicate]无法定位元素:{"method":"xpath","selector":"//*[@id="react-root"]/section/main/article/div[2]/div[1]/div /form/div[3]/div/label/input"} [重复]
【发布时间】:2020-02-23 02:18:34
【问题描述】:
from selenium import webdriver

import time

import regg

from selenium.webdriver.common.action_chains import ActionChains

browser = webdriver.Chrome("E:\\Nice\\chromedriver.exe") #Starting Firefox Browser
url="https://www.instagram.com/"

browser.get(url)
time.sleep

phone=browser.find_element_by_xpath('//*[@id="react-root"]/section/main/article/div[2]/div[1]/div/form/div[3]/div/label/input')

phone.send_keys('0947464451')

fullname=browser.find_element_by_name("fullName")

fullname.send_keys(regg.user1)


username=browser.find_element_by_name("username")

username.send_keys (regg.user1)

password =browser.find_element_by_name("password")

password.send_keys(regg.password)

singup=browser.find_element_by_xpath("//*[@id='react-root']/section/main/article/div[2]/div[1]/div/form/div[7]/div/button").click()

【问题讨论】:

  • 嗨,到底发生了什么错误?

标签: python selenium-webdriver


【解决方案1】:

AFAIK,您正在尝试访问 instagram 主页上的电话号码输入字段。 但是,定位器正在工作,我刚刚检查过。可能的原因是页面加载。 instagram 网站上有一个预加载器,加载页面约 1-2 秒。

在这种情况下,尝试使用 ImplicitWait 而不是睡眠。把它放在 driver.get(url) 之后:

driver.manage().timeouts().implicitlyWait(7, TimeUnit.SECONDS);

我的代码 sn-p 是用 Java 编写的。将其解释为 Python 并不难。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-01-06
    • 2012-02-02
    • 2016-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多