Python + Selenium + PhantomJs =不点击=(但Firefox点击

时间:2017-01-16 08:18:34

标签: python selenium phantomjs

我遇到了问题:

以下是在Firefox中点击网站链接的代码。有用。点击。 但是PhantomJS中的相同代码会转到页面而不是点击。 请帮忙解决问题。提前谢谢

from selenium import webdriver
import time
browser=webdriver.PhantomJS()
browser.get('http://nnmclub.to')
time.sleep(10)
browser.find_element_by_xpath("//a[contains(@href,'www.marketgid.com')]").click()
time.sleep(10)
browser.quit()

1 个答案:

答案 0 :(得分:2)

您尝试点击的链接具有属性target="_blank",这意味着应在新标签(窗口)中打开此链接。要查看它实际上是单击的,您应该尝试使用以下代码切换到该新窗口:

from selenium import webdriver
import time

browser=webdriver.PhantomJS()
browser.get('http://nnmclub.to')
current = browser.window_handles[0]
time.sleep(10)
browser.find_element_by_xpath("//a[contains(@href,'www.marketgid.com')]").click()
time.sleep(10)
newWindow = [window for window in browser.window_handles if window != current][0]
browser.switch_to.window(newWindow)
browser.get_screenshot_as_file(path_to_file)
browser.quit()