好吧,所以我的问题是我想制作一个"模因"程序,只需在不同的选项卡中打开一堆p0rn网站,然后播放所有视频,我的问题就是我不知道如何使用这些选项卡,因为我的links.json数组中的每个URL都会在同一个选项卡上重新加载,所以在大约2秒内,所有页面都会在相同的选项卡上重新下载,我在互联网上"使用数组、循环而不关闭选项卡"还没有找到任何修复方法,否则会有一些修复方法,但如果你几乎必须立即关闭选项卡,程序就没有意义了,所以我要求这样做你们中有人知道如何使用硒元素来实现这一点吗?我知道还有其他一些方法,但这个程序就没有意义了——它应该这样工作:
打开程序->打开Chrome->获取链接中的链接:打开带有.json文件(数组(中URL的新选项卡->查找带有("是的,我18岁或以上(的元素->单击"是"按钮->查找播放按钮->单击它并以某种方式对links.json文件中的所有URL或元素重复该过程
我写的代码还没有实现,因为我不知道如何用新的标签重复循环
代码(到目前为止(:
import string
import os
import json
from selenium import webdriver
import webbrowser
from selenium.webdriver.common.keys import Keys
import chromedriver_binary
import time
from selenium.webdriver import ActionChains
driver = webdriver.Chrome(executable_path='C:Program Fileschromedriver80chromedriver.exe')
links = json.loads(open("links.json").read())
for link in links:
driver.get(link) #only opens all the files in one tab :(
#THIS IS HOW IT SHOULD BE IDEALLY:
#NEW TAB
#Open URL in Chrome
#Find 18y.o. button
#press YES
#find play button
#press it
#LOOP AGAIN
print("Now accessing: " + link)
.json文件(我不确定我是否可以添加实际链接,所以如果你想测试它,也许只需要找到你自己的,我用了xnnx,只是说'(
[ "p0rnLinkNo.0",
"p0rnLinkNo.1",
"p0rnLinkNo.2",
"p0rnLinkNo.3",
"p0rnLinkNo.4"]
我能弄清楚按钮,但不能弄清楚标签,请帮助
很抱歉发布我已经有了解决方案,但我在错误的地方定义了变量,所以它不起作用解决方案代码:
import string
import os
import json
from selenium import webdriver
import webbrowser
from selenium.webdriver.common.keys import Keys
import chromedriver_binary
import time
from selenium.webdriver import ActionChains
driver = webdriver.Chrome(executable_path='C:Program Fileschromedriver80chromedriver.exe')
links = json.loads(open("links.json").read())
temp = 1
for link in links:
driver.execute_script("window.open('');")
driver.switch_to.window(driver.window_handles[temp])
driver.get(link)
print("Now accessing: " + link)
temp += 1
感谢XD 的否决票