我正在尝试使用 selenium 库自动打开从我的不和谐中获得的链接。这是我的代码:
#imports
import discord
from selenium import webdriver
client = discord.Client()
#Load discord channels
def getChannelIDs():
channelList = []
with open ("C:\\Users\\haide\\PycharmProjects\\Discord-Link-Opener\\channel ID.txt", "r") as file:
for id in file:
channelList.append(int(id.strip()))
return channelList
channelList = getChannelIDs()
#get the url from discord
@client.event
async def on_message(message):
if message.channel.id in channelList:
urls = re.findall('http[s]?://(?:[a-zA-Z]|[0-9]|[$-_@.&+]|[!*(),]|(?:%[0-9a-fA-F][0-9a-fA-F]))+', message.content)
if urls:
print (f"[{datetime.datetime.now()}] Link(s) Found:")
for x in range(len(urls)):
print(urls[x])
open_url(urls[x])
#open the link with selenium
def open_url(url):
PATH = r'C:\Program Files (x86)\chromedriver.exe'
chrome_options = Options()
chrome_options.add_argument("user-data-dir=selenium")
chrome_options.add_argument('--disable-blink-features=AutomationControlled')
driver = webdriver.Chrome(chrome_options=chrome_options, executable_path=PATH)
driver.set_window_size(1024, 600)
driver.maximize_window()
driver.get(url)
client.run(token, bot=False)
一切正常,直到我在不和谐中获得另一个链接。它打开第二页,但没有页面是空白的。我也收到此错误:
Traceback (most recent call last):
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\venv\lib\site-packages\discord\client.py", line 343, in _run_event
await coro(*args, **kwargs)
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\DiscordLinkOpener.py", line 69, in on_message
open_url(urls[x])
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\DiscordLinkOpener.py", line 87, in open_url
elif PartAlert in url:
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\venv\lib\site-packages\selenium\webdriver\chrome\webdriver.py", line 76, in __init__
RemoteWebDriver.__init__(
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 157, in __init__
self.start_session(capabilities, browser_profile)
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 252, in start_session
response = self.execute(Command.NEW_SESSION, parameters)
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\venv\lib\site-packages\selenium\webdriver\remote\webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "C:\Users\haide\PycharmProjects\Discord-Link-Opener\venv\lib\site-packages\selenium\webdriver\remote\errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.InvalidArgumentException: Message: invalid argument: user data directory is already in use, please specify a unique value for --user-data-dir argument, or don't use --user-data-dir
有解决这个问题的想法吗?