找到关于 Selenium 的519 篇文章
643 次浏览
我们可以使用 Selenium webdriver 发送 Cookie。Cookie 以键值对的形式存储。首先,我们必须添加 Cookie,然后才能删除它们。我们还可以获取 Cookie。此外,我们必须添加 `import org.openqa.selenium.Cookie` 语句用于 Cookie 实现。语法:`Cookie ck = new Cookie("Automation", "QA"); driver.manage().addCookie(ck); driver.manage().getCookies(); driver.manage().deleteAllCookies();` 示例代码实现:`import java.util.Set; import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.Cookie; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; public class CookiesSend{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(4, TimeUnit.SECONDS); driver.get("https://tutorialspoint.com/index.htm"); // cookie set ... 阅读更多
6K+ 次浏览
我们可以使用 Selenium 在 Python 中将文件下载到指定位置。这是通过 `ChromeOptions` 类实现的。我们将设置浏览器的首选项并传递 `download.default_directory` 参数。我们需要使用该参数提及下载目录的路径。此首选项使用 `add_experimental_option` 方法发送到 `ChromeOptions` 对象。最后,此浏览器信息将与驱动程序对象共享。语法:`op = webdriver.ChromeOptions() p = ("download.default_directory": "C:\Users", "safebrowsing.enabled":"false") op.add_experimental_option("prefs", p) driver = webdriver.Chrome(chrome_options=op)` 示例代码实现:`from selenium import webdriver from selenium.webdriver.common.by import By # ChromeOptions 对象 op = webdriver.ChromeOptions() # 设置下载目录路径 p = ("download.default_directory": "C:\Users""safebrowsing.enabled":"false") ... 阅读更多
5K+ 次浏览
我们可以点击 Selenium webdriver 中的显示通知弹出窗口上的“允许”。这些是来自网站的消息,通常称为 Web 推送通知。这可以使用浏览器设置来处理。这是通过 `ChromeOptions` 类实现的。我们将创建一个它的对象并在其上应用 `addArguments` 方法。然后将 `--disable-notifications` 作为参数传递给该方法。最后,此信息应发送到驱动程序对象。语法:`ChromeOptions p = new ChromeOptions(); p.addArguments("--disable-notifications");` 让我们尝试处理页面上的以下通知。示例代码实现:`import org.openqa.selenium.WebDriver; import org.openqa.selenium.chrome.ChromeDriver; import org.openqa.selenium.chrome.ChromeOptions; import java.util.concurrent.TimeUnit; public class BrowserNotification{ public static void main(String[] args) ... 阅读更多
37K+ 次浏览
我们可以使用 xpath 来获取 Selenium Webdriver 中的 SVG 元素。SVG 元素由标签名 svg 标识。svg 图像具有诸如宽度和高度之类的属性。让我们研究一下 svg 元素的 html 代码。要为 svg 元素创建 xpath,我们的语法为 `//*[local-name()='svg']`。`local-name` 函数对于创建 svg 元素的 xpath 是必须的。因此,上面图像中突出显示的图像的 xpath 表达式应为:`//*[local-name()='svg' and @data-icon='home']/*[local-name()='path']`。这里,`data-icon` 是 svg 标签元素的属性,它带有 `@` 符号。`[local-name()='path']` 是 ... 阅读更多
1K+ 次浏览
我们可以无 GUI 地运行 Selenium (Firefox) webdriver。这意味着执行必须在无头模式下启动。无头执行现在很流行,因为它会导致更少的资源消耗。在设置 geckodriver 路径后,可以执行无 GUI 的 Firefox。我们将借助 FirefoxOptions 类,通过 setHeadless 方法将此信息共享给浏览器。最后将 true 作为参数传递给它。语法:`FirefoxOptions op = new FirefoxOptions(); op.setHeadless(true); WebDriver driver = new FirefoxDriver(op);` 示例代码实现:`import org.openqa.selenium.WebDriver; import org.openqa.selenium.WebElement; import org.openqa.selenium.firefox.FirefoxDriver; import org.openqa.selenium.firefox.FirefoxOptions; import java.util.concurrent.TimeUnit; public class FirefoxNoGUI{ public static void main(String[] args) { ... 阅读更多
1K+ 次浏览
我们可以使用 Selenium 以编程方式使 Firefox 无头。这可以通过 `FirefoxOptions` 类实现。然后我们将为该类创建一个对象选项。我们将把参数 `options.headless` 设置为 `True` 值。此浏览器信息必须传递给驱动程序对象。我们必须添加导入语句:`from selenium.webdriver.firefox.options import Options as FirefoxOptions` 用于 `FirefoxOptions` 类。语法:`options = webdriver.FirefoxOptions() options.headless = True` 示例代码实现:`from selenium import webdriver from selenium.webdriver.firefox.options import Options as FirefoxOptions # FirefoxOptions 对象 options = webdriver.FirefoxOptions() # 将 options.headless 设置为 True options.headless = True driver = webdriver. Firefox(executable_path="C:\geckodriver.exe", options=options) driver.implicitly_wait(0.4) driver.get("https://tutorialspoint.com/index.htm") # 识别 ... 阅读更多
3K+ 次浏览
我们可以控制 chromedriver 以指定窗口大小打开 Selenium。这是通过 `ChromeOptions` 类实现的。我们必须创建一个它的对象并在其上应用 `addArguments` 方法。然后将 `window-size=x, y` 作为参数传递给该方法。x 和 y 是窗口的尺寸。接下来,我们必须使用 `DesiredCapabilities` 类将此选项应用于 Chrome 浏览器。最后,此信息将发送到驱动程序对象。语法:`ChromeOptions op = new ChromeOptions(); op.addArguments("window-size=500, 250"); DesiredCapabilities c = DesiredCapabilities.chrome(); c.setCapability(ChromeOptions.CAPABILITY, op); WebDriver d = new ChromeDriver(op);` 示例代码实现:`import org.openqa.selenium.WebDriver; import org.openqa.selenium.remote.DesiredCapabilities; import org.openqa.selenium.chrome.ChromeDriver; import ... 阅读更多
14K+ 次浏览
我们可以使用 Selenium 和 Python 上传文件。这可以通过 `send_keys` 方法实现。首先,我们将识别执行选择要上传的文件路径的任务的元素。此功能仅适用于将 `type` 属性设置为 `file` 的元素。此外,元素的标签名应为 `input`。让我们研究一下具有上述属性的元素的 html 代码。示例代码实现:`from selenium import webdriver driver = webdriver.Chrome(executable_path="C:\chromedriver.exe") driver.implicitly_wait(0.5) driver.maximize_window() driver.get("https://tutorialspoint.com/selenium/selenium_automat ion_practice.htm") # 识别元素 s = driver.find_element_by_xpath("//input[@type='file']") # 使用 send_keys 指定文件路径 s.send_keys("C:\Users\Pictures\Logo.jpg")` 输出 阅读更多
7K+ 次浏览
我们可以使用 Selenium webdriver 中的 Java Robot 类上传文件。它可以为键盘和鼠标事件产生模拟。它源自 AWT 包。语法:`Robot r = new Robot(); r.keyPress(KeyEvent.VK_ENTER); r.keyRelease(KeyEvent.VK_ENTER);` 示例代码实现:`import org.openqa.selenium.By; import org.openqa.selenium.WebDriver; import java.awt.*; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; import java.util.concurrent.TimeUnit; import java.awt.datatransfer.StringSelection; import java.awt.event.KeyEvent; import org.openqa.selenium.JavascriptExecutor; public class RobotUplFile{ public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "C:\Users\ghs6kor\Desktop\Java\chromedriver.exe"); WebDriver driver = new ChromeDriver(); driver.manage().timeouts().implicitlyWait(8, TimeUnit.SECONDS); driver.get("http://my.monsterindia.com/create_account.html"); // 滚动以到达上传按钮 JavascriptExecutor j = (JavascriptExecutor)driver; ... 阅读更多
882 次浏览
我们可以使用代理启动 Selenium 浏览器。代理服务器是执行本地化测试的重要工具。我们可以以电子商务网站为例,验证显示的语言和货币是否与用户位置一致。在测试中使用代理服务器,我们可以测试特定位置用户的网站外观和感觉。首先,我们必须按照以下步骤配置经过身份验证的代理服务器:从 Selenium 包导入 webdriver。声明代理服务器。配置 ChromeOptions 类。将代理服务器与 ChromeOptions 组合。将选项传递给 Chrome() 对象。示例代码实现… 阅读更多