如何通过使用Selenium和phantomjs从新窗口获取URL

时间:2016-04-27 09:39:34

标签: python selenium phantomjs

我想通过使用selenium获得一个新的窗口URL,使用PhantomJs比Firefox更有效。   python代码在这里:

from selenium import webdriver
renren = webdriver.Firefox()
#renren = webdriver.PhantomJS()
renren.get("file:///home/xjz/Desktop/html/easy.html")
renren.execute_script("windows()")
now_handle1 = renren.current_window_handle
all_handles1 = renren.window_handles
for handle1 in all_handles1:
    if handle1 != now_handle1:
        renren.switch_to_window(handle1)
        print renren.current_url
        print renren.page_source

在脚本" windows()"中,它将为http://www.renren.com/打开一个新窗口。   当我使用Firefox时,我得到http://www.renren.com/的当前网址和上下文。但是我得到了关于:空白"的网址和""上下文。这意味着当我使用PhantomJS时我失败了。   那么当我使用含有PhantomJS的硒时,如何获得当前的url。   非常感谢。

1 个答案:

答案 0 :(得分:0)

您可以在获取当前网址之前在代码中添加休眠时间。

from selenium import webdriver
renren = webdriver.Firefox()
...
...
...
import time
    time.sleep(10)# in seconds
    print renren.current_url
..