Python | PhantomJS未点击元素
我已经花了整整一周的时间试图解决这个问题,这是我最后一次尝试(询问stackoverflow) 我使用phantomjs和selenium进入YouTube的登录页面,填写凭证并登录 我进入登录页面,它会设法填写电子邮件,但无论我尝试什么,它都不会点击“下一步”按钮 现在我都试过了Python | PhantomJS未点击元素,python,selenium,automation,phantomjs,Python,Selenium,Automation,Phantomjs,我已经花了整整一周的时间试图解决这个问题,这是我最后一次尝试(询问stackoverflow) 我使用phantomjs和selenium进入YouTube的登录页面,填写凭证并登录 我进入登录页面,它会设法填写电子邮件,但无论我尝试什么,它都不会点击“下一步”按钮 现在我都试过了 driver.find_element_by_xpath("""//*[@id="identifierNext"]/content/span""").click() driver.find_element_by_c
driver.find_element_by_xpath("""//*[@id="identifierNext"]/content/span""").click()
driver.find_element_by_css_selector("#identifierNext>content>span").click()
webdriver.ActionChains(driver).move_to_element(element).click(element).perform()
driver.find_element_by_id("identifierNext").click()
这些都不管用。我也尝试了javascript命令
我还想补充一点,在没有PhantomJS的情况下,点击元素可以很好地使用selenium
如果这里有人能帮助我,我将不胜感激
编辑:
这些信息可能会有帮助。单击“下一步”后,大约需要一秒钟才能进入密码部分。这是一个滑动动画
此问题尚未回答。以下是您问题的答案: 几句话:
电子邮件或电话的定位器也需要稍加修改
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap["-phantomjs.page.settings.userAgent-"] = (
"-Mozilla-5.0 (Windows NT 6.3; WOW64) AppleWebKit-537.36 (KHTML, like Gecko) Chrome-34.0.1847.137 Safari-537.36-"
)
driver = webdriver.PhantomJS(desired_capabilities=dcap, executable_path="C:\\Utility\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe")
driver.get("https://youtube.com")
driver.find_element_by_xpath("//button[@class='yt-uix-button yt-uix-button-size-default yt-uix-button-primary']/span[@class='yt-uix-button-content']").click()
print("Logging in...")
email_phone = driver.find_element_by_xpath("//input[@id='identifierId']")
email_phone.send_keys("debanjanb")
driver.find_element_by_id("identifierNext").click()
print("Clicked on Next Button")
如果回答了您的问题,请告诉我。以下是您问题的答案: 几句话:
电子邮件或电话的定位器也需要稍加修改
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
import time
dcap = dict(DesiredCapabilities.PHANTOMJS)
dcap["-phantomjs.page.settings.userAgent-"] = (
"-Mozilla-5.0 (Windows NT 6.3; WOW64) AppleWebKit-537.36 (KHTML, like Gecko) Chrome-34.0.1847.137 Safari-537.36-"
)
driver = webdriver.PhantomJS(desired_capabilities=dcap, executable_path="C:\\Utility\\phantomjs-2.1.1-windows\\bin\\phantomjs.exe")
driver.get("https://youtube.com")
driver.find_element_by_xpath("//button[@class='yt-uix-button yt-uix-button-size-default yt-uix-button-primary']/span[@class='yt-uix-button-content']").click()
print("Logging in...")
email_phone = driver.find_element_by_xpath("//input[@id='identifierId']")
email_phone.send_keys("debanjanb")
driver.find_element_by_id("identifierNext").click()
print("Clicked on Next Button")
如果这回答了您的问题,请告诉我。等等,测试它。代码经过了良好测试,在我的Windows 8 PC上工作得最好。谢谢。什么不起作用?您在哪一行看到错误?这个错误是怎么回事?你能更新问题区域中的所有信息以便进一步分析吗?谢谢,我没有收到任何错误。我只是在代码后截屏,它仍然在电子邮件部分的登录页面上,它没有单击“下一步”。它仍然没有单击“下一步”按钮。等等,测试它。代码经过了很好的测试,在我的Windows 8 PC上工作得最好。谢谢。什么不起作用?您在哪一行看到错误?这个错误是怎么回事?你能更新问题区域中的所有信息以便进一步分析吗?谢谢,我没有收到任何错误。我只是截屏后的代码,它仍然在登录页面的电子邮件部分,它没有点击下一步。它仍然没有点击下一步按钮。