无法使用Selenium在Twitter帐户中获取用户名和密码
我正在使用下面的代码登录twitter无法使用Selenium在Twitter帐户中获取用户名和密码,selenium,twitter,webdriver,Selenium,Twitter,Webdriver,我正在使用下面的代码登录twitter driver.get("https://twitter.com/login/"); driver.findElement(By.xpath("//*[@id='page-container']/div/div[1]/form/fieldset/div[1]/input")).sendKeys("viaxpath"); driver.findElement(By.xpath("//*[@id='page-container']/div
driver.get("https://twitter.com/login/");
driver.findElement(By.xpath("//*[@id='page-container']/div/div[1]/form/fieldset/div[1]/input")).sendKeys("viaxpath");
driver.findElement(By.xpath("//*[@id='page-container']/div/div[1]/form/fieldset/div[2]/input")).sendKeys("viaxpath");
要在Chrome中获取CSS选择器,请执行以下操作:
document.querySelector("#page-container > div > div.signin-wrapper > form > fieldset > div:nth-child(2) > input").value = "Timothy"
在(Java)Selenium中,它看起来像:
driver.findElement(By.cssSelector("#page-container > div > div.signin-wrapper > form > fieldset > div:nth-child(2) > input")).sendKeys("Timothy");
您可能遇到的一个问题是,在页面准备就绪之前加载页面并尝试输入。因此,我建议在导航到页面和与输入交互之间进行一次比较。您提到的代码已经在工作了。您应该能够输入twitter帐户的用户名和密码。以下是您问题的答案:
可以考虑构造一个<代码> XPath < />代码>,它唯一标识了<代码>用户名和<代码>密码字段,并且可以很容易地通过Self进行遍历。以下是您自己的代码,其中包含一些简单的调整,在我看来非常有效:
WebDriver driver = new FirefoxDriver();
driver.manage().window().maximize();
driver.get("https://twitter.com/login/");
driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
driver.findElement(By.xpath("//div[@class='clearfix field']/input[@name='session[username_or_email]']")).sendKeys("id@domain.com");
driver.findElement(By.xpath("//div[@class='clearfix field']/input[@name='session[password]']")).sendKeys("password");
如果这回答了您的问题,请告诉我。我也尝试了相同的代码,但twitter不允许我在他们的文本字段中插入用户名和密码。@Mashhood让我们在下面的讨论中讨论这个问题