ChromeDriver是与Chromium团队合作开发的,是一个实现WebDriver线路协议的独立服务器。
selenium webdriver错误。错误发生在PATH
从 selenium 导入 webdriver 路径 = r"D:\下载
Python Selenium:当浏览器无头时无法通过 xpath 找到元素
我正在尝试使用以下代码使用 Python Selenium 登录网站: 导入时间 从 contextlib 导入 contextmanager 从硒导入网络驱动程序 来自 selenium.webdriver.chrome。
请帮我解决selenium中的问题 java.lang.StringIndexOutOfBoundsException:范围 [0, -1) 超出长度 7 的范围 代码 : 包装adipolipkg; 导入 org.junit.Before; 导入 org.j...
Selenium chrome-driver 在 div 元素中点击问题
HTML HTML <div class="hb-fzpaiS dEBb srjgzgk7zu4"><svg width="14" height="8" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M7.943 7.39c-.52.521-1.365.521-1.886 0l-4.78-4.78C.436 1.77 1.03.332 2.218.332h9.562c1.188 0 1.783 1.436.943 2.276L7.943 7.39Z" fill="#8C8C8C"></path></svg></div> Python try: button = WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.XPATH, "//div[contains (@class, 'hb-fzpaiS dEBb srjgzgk7zu4')]"))) try: ActionChains(driver).move_to_element(button).click().perform() except Exception as e: print(f"Failed to click button using ActionChains for {link}: {e}") try: driver.execute_script("arguments[0].click();", button) except Exception as e: print(f"Failed to click button using JavaScript for {link}: {e}") try: button.click() except Exception as e: print(f"Failed to click button directly for {link}: {e}") except Exception as e: print(f"Button not clickable or not found for {link}: {e}") 我正在处理的网页: https://www.hepsiburada.com/magaza/a-34?tab=profile 我控制了xpath。 Xpath 是正确的。但是当我运行代码块时,出现 GetHandleVerifier 错误。我尝试了很多 try- except 块但我无法解决这个问题。 我无法点击 div 吗?我该如何解决这个问题? 您可以尝试另一种滚动方法。这对我有用: driver.get('https://www.hepsiburada.com/magaza/a-34?tab=profile') button = driver.find_element(By.XPATH, "//*[contains(text(), 'Satıcı Bilgileri')]") driver.execute_script("arguments[0].scrollIntoView()", button) element.click() 您可能需要添加等待元素完成加载的操作。
在 Python 中使用 chromedriver 的分离选项
分离似乎根本不起作用。我的脚本(在命令提示符下运行而不是空闲时)在完成后关闭窗口。我认为添加分离作为一个选项可以防止这种情况。 什么可以...
有没有一种方法可以通过编程方式获取 HTTP/2 日志 chrome://net-internals/#http2 通过硒还是命令行选项? 我想使用 HTTP/2 进行自动化测试,并且我正在使用
如何通过 Selenium、ChromeDriver 和 GoogleChrome 打开默认 Chrome 配置文件
我想加载一个使用 Chrome 的新 Selenium ChromeDriver,就像我从扩展坞打开 Chrome 一样(本质上它将包含我所有的扩展、历史记录等) 当我使用以下代码时: ChromeOpt...
Python:如何在 Python Selenium 中打开新选项卡而不等待当前选项卡页面加载
我在 Chrome 浏览器中成功打开 10 个选项卡(相同的 URL)。但问题是,我的 URL 需要 1 分钟才能加载页面,而且我不想在每个选项卡上等待 1 分钟。 我需要让它加载并想要...
在 Python 中发出 POST 请求并抓取 JS 生成的内容
因此,要抓取 vue-app 标签中动态生成的页面内容,我首先需要使用凭据登录,这是通过 POST 请求完成的。问题是要成功登录,我
1SessionNotCreatedException:无法启动新会话。可能的原因是远程服务器地址无效或者浏览器启动失败
无法启动浏览器(Chrome、Edge 等)我有最新版本的 Chrome:126,Selenium:4.22.0,java.version:'22.0.1'。 线程“main”org.openqa.selenium 中出现异常。
设置 Selenium ChromeDriver 用户首选项以另存为 PDF
我正在使用 ChromeDriver 2.33,并使用信息亭打印自动单击“打印预览”对话框上的“打印”按钮,但它将文档而不是 PDF 发送到打印机。 我有
WebDriver'对象没有属性'find_element_by_id'
我正在运行 tiktok scrapper,但出现此错误。我该如何修复它? C:\Users dit\Downloads\Compressed\shot\shorts iktokscraper\downloader.py:31:DeprecationWarning:executable_path 已
我正在尝试从此会议列表中抓取会议网站:https://www.cadc-ccda.hia-iha.nrc-cnrc.gc.ca/en/meetings/archive/#2022 这需要 Selenium 单击“详细信息”才能获取...
如何使用 Selenium 和 Python 单击表单内的输入按钮?
我有这个表格,我需要单击输入类型按钮,其值= CASTRO SALVADOR。我正在使用 Python 和 Selenium。 我有此表格,我需要单击输入类型按钮,其值为 CASTRO SALVADOR。我正在使用 Python 和 Selenium。 <form name="seleccionaEmpresaForm" action="setearContribuyente.do"> <table width="50%" align="center"> <tbody><tr><td height="5"></td></tr> <tr><td align="center"><b>Seleccione la Empresa a representar:</b></td></tr> <tr><td height="5"></td></tr> <tr> <td align="center"> <input type="hidden" name="idContribuyente" id="idcontribuyente"> <input type="button" class="btn_empresa ui-button ui-widget ui-state-default ui-corner-all" style="width:100%" value="CASTRO SALVADOR" onclick="document.getElementById('idcontribuyente').value='0';document.seleccionaEmpresaForm.submit();" role="button"> </td> </tr> <tr><td height="5"></td></tr> </tbody></table> </form> 在我的代码下面,您会发现我尝试选择输入类型按钮的不同方法。 from selenium import webdriver from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.common.action_chains import ActionChains import time # Configura el driver de Selenium para Firefox driver = webdriver.Firefox() # Navega a la página de login del sistema de AFIP driver.get("https://auth.afip.gov.ar/contribuyente_/login.xhtml?action=SYSTEM&system=admin_mono") WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "F1:username"))).send_keys("xxxxxx") WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "F1:btnSiguiente"))).click() WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, "F1:password"))).send_keys("xxxxx") WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "F1:btnIngresar"))).click() # Espera para asegurar que la sesión se haya iniciado correctamente WebDriverWait(driver, 10).until(EC.url_contains("monotributo.afip.gob.ar")) # Navega a la página de facturación driver.get("https://monotributo.afip.gob.ar/app/Facturacion.aspx") WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.ID, "bBtn1"))) # Hace clic en el botón inicial en la página de facturación WebDriverWait(driver, 10).until(EC.element_to_be_clickable((By.ID, "bBtn1"))).click() # Espera hasta que el elemento sea visible y no solo presente: driver.implicitly_wait(2) button = driver.find_element(By.XPATH, "//input[@value='CASTRO SALVADOR']") driver.execute_script("arguments[0].click();", button) button.click() 我也尝试: boton = driver.find_element(By.CSS_SELECTOR, "input.btn_empresa[value='CASTRO SALVADOR']") boton.click() 我也尝试: boton = driver.find_element(By.CSS_SELECTOR, "input.btn_empresa.ui-button.ui-widget.ui-state-default.ui-corner-all") boton.click() 更新。我只是尝试: button = driver.find_element(By.XPATH, "//input[@class='btn_empresa' and @value='CASTRO SALVADOR']") driver.execute_script("arguments[0].click();", button) 但是我遇到了这个终端错误: Traceback (most recent call last): File "/Users/salvacastro/Desktop/afip.py", line 31, in <module> button = driver.find_element(By.XPATH, "//input[@class='btn_empresa' and @value='CASTRO SALVADOR']") File "/Users/salvacastro/Library/Python/3.9/lib/python/site-packages/selenium/webdriver/remote/webdriver.py", line 748, in find_element return self.execute(Command.FIND_ELEMENT, {"using": by, "value": value})["value"] File "/Users/salvacastro/Library/Python/3.9/lib/python/site-packages/selenium/webdriver/remote/webdriver.py", line 354, in execute self.error_handler.check_response(response) File "/Users/salvacastro/Library/Python/3.9/lib/python/site-packages/selenium/webdriver/remote/errorhandler.py", line 229, in check_response raise exception_class(message, screen, stacktrace) selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: //input[@class='btn_empresa' and @value='CASTRO SALVADOR']; For documentation on this error, please visit: https://www.selenium.dev/documentation/webdriver/troubleshooting/errors#no-such-element-exception Stacktrace: RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8 WebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:193:5 NoSuchElementError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:511:5 dom.find/</<@chrome://remote/content/shared/DOM.sys.mjs:136:16 JavaScript 执行: 您可以使用 JavaScript 单击按钮 尝试: button = driver.find_element(By.XPATH, "//input[@class='btn_empresa' and @value='CASTRO SALVADOR']") driver.execute_script("arguments[0].click();", button)
如何使用selenium和python点击表单内的输入按钮?
我有此表格,我需要单击带有 de value = CASTRO SALVADOR 的输入类型按钮。 我有此表格,我需要单击带有 de value = CASTRO SALVADOR 的输入类型按钮。 <form name="seleccionaEmpresaForm" action="setearContribuyente.do"> <table width="50%" align="center"> <tbody><tr><td height="5"></td></tr> <tr><td align="center"><b>Seleccione la Empresa a representar:</b></td></tr> <tr><td height="5"></td></tr> <tr> <td align="center"> <input type="hidden" name="idContribuyente" id="idcontribuyente"> <input type="button" class="btn_empresa ui-button ui-widget ui-state-default ui-corner-all" style="width:100%" value="CASTRO SALVADOR" onclick="document.getElementById('idcontribuyente').value='0';document.seleccionaEmpresaForm.submit();" role="button"> </td> </tr> <tr><td height="5"></td></tr> </tbody></table> </form> 我正在尝试使用selenium的这个脚本: WebDriverWait(driver, 10).until(EC.visibility_of_element_located((By.XPATH, "//input[contains(@class, 'btn_empresa') and @value='CASTRO SALVADOR']"))).click() 我也尝试: boton = driver.find_element(By.CSS_SELECTOR, "input.btn_empresa[value='CASTRO SALVADOR']") boton.click() 我也尝试: boton = driver.find_element(By.CSS_SELECTOR, "input.btn_empresa.ui-button.ui-widget.ui-state-default.ui-corner-all") boton.click() JavaScript 执行: 您可以使用 JavaScript 单击按钮 尝试: button = driver.find_element(By.XPATH, "//input[@class='btn_empresa' and @value='CASTRO SALVADOR']") driver.execute_script("arguments[0].click();", button)
TLDR:我创建了多个硒驱动程序来测试不同的功能,并且使用了太多的内存。有没有办法限制selenium的内存使用? (我已经无头跑了) 所以我...
我有我的驱动程序工厂页面 运行我的脚本后我遇到了这个问题 ChromeDriver已成功启动。 org.openqa.selenium.SessionNotCreatedException:无法启动新的会话...
用于测试自助服务终端打印的 Google Chrome 不保存我的 PDF
我正在使用 Selenium 打开一系列网页,每个网页在加载表单时都有一个 window.print() 。我相当确定过去我已经成功地将这段代码与 chromium 驱动程序一起使用......
Python 仅在 ChromeDriver 无头模式下请求 Selenium 问题
我想使用请求库和带有 ChromeDriver 的 Selenium 来抓取 Facebook 广告网站(因为我需要在具有 chromedriver 的 pythonanywhere 上运行它)。 所以我这样做: chrome_options = ChromeO...
SeleniumBase:网络爬虫受到人工验证系统的影响(选择类似图像)
在使用 SeleniumBase 抓取快递网站以截取跟踪页面的屏幕截图时,检测到机器人并显示“选择相似图像”验证框。 网址:h...