使用python

时间:2019-02-10 21:36:16

标签: python python-2.7 selenium

我已经使用硒生成了链接列表,我需要在单独的标签中打开每个链接。我已经尝试过body.send_keys(Keys.CONTROL +"t")body.send_keys(Keys.COMMAND+"t")都没有用(没有错误,但是什么也没发生),在搜索答案后,我发现了该链接Opening new tabs selenium,但是他们大多使用Java脚本(可以正常工作,它打开了一个新标签)运行它,我似乎无法操纵,如 driver.execute_script('''window.open("http://bings.com","_blank");''')但是我不能在如下的for循环中使用它:

for link in links:
    #driver.execute_script("window.open('https://www.yahoo.com')")
    driver.execute_script("window.open('%s')")%link

编辑1:要重复,给出的答案是有效的Java脚本代码,但是我不能直接在for循环中使用

我是否需要打开一个新的随机站点(使用上面的Java脚本),然后driver.get(link)才能到达我的原始链接

如果重要的话,我在Linux上使用python 2.7。

1 个答案:

答案 0 :(得分:0)

您可以创建一个control_string作为脚本传递:

links = ['https://www.yahoo.com', 'http://bings.com']

for link in links:
    control_string = "window.open('{0}')".format(link)
    driver.execute_script(control_string)