All Projects â†’ LinusU â†’ Marionette

LinusU / Marionette

Licence: mit
🧸 Swift library which provides a high-level API to control a WKWebView

Programming Languages

swift
15916 projects

Projects that are alternatives of or similar to Marionette

Triflejs
Headless automation for Internet Explorer
Stars: ✭ 815 (+117.91%)
Mutual labels:  automation, headless
Navalia
A bullet-proof, fast, and reliable headless browser API
Stars: ✭ 950 (+154.01%)
Mutual labels:  automation, headless
Puppeteer Api Zh cn
📖 Puppeteer中文文档(官方指定的中文文档)
Stars: ✭ 697 (+86.36%)
Mutual labels:  automation, headless
Chrome Har Capturer
Capture HAR files from a Chrome instance
Stars: ✭ 423 (+13.1%)
Mutual labels:  automation, headless
Chrome Devtools Protocol
Chrome Devtools Protocol client for PHP
Stars: ✭ 112 (-70.05%)
Mutual labels:  automation, headless
Ferrum
Headless Chrome Ruby API
Stars: ✭ 1,009 (+169.79%)
Mutual labels:  automation, headless
Phantomjs
Scriptable Headless Browser
Stars: ✭ 28,654 (+7561.5%)
Mutual labels:  automation, headless
Taiko
A node.js library for testing modern web applications
Stars: ✭ 2,964 (+692.51%)
Mutual labels:  automation, headless
Cli
Get a programmable email address. Automate what happens when you receive emails. It's like Zapier for devs who hate emails.
Stars: ✭ 105 (-71.93%)
Mutual labels:  automation, headless
Rod
A Devtools driver for web automation and scraping
Stars: ✭ 1,392 (+272.19%)
Mutual labels:  automation, headless
Headless Burp
Automate security tests using Burp Suite.
Stars: ✭ 192 (-48.66%)
Mutual labels:  automation, headless
Playwright Go
Playwright for Go a browser automation library to control Chromium, Firefox and WebKit with a single API.
Stars: ✭ 272 (-27.27%)
Mutual labels:  automation, headless
Exscript
A Python module making Telnet and SSH easy
Stars: ✭ 337 (-9.89%)
Mutual labels:  automation
Docker Autocompose
Generate a docker-compose yaml definition from a running container
Stars: ✭ 359 (-4.01%)
Mutual labels:  automation
Acme Client
Let's Encrypt / ACME client written in PHP for the CLI.
Stars: ✭ 337 (-9.89%)
Mutual labels:  automation
Chrome Remote Interface
Chrome Debugging Protocol interface for Node.js
Stars: ✭ 3,603 (+863.37%)
Mutual labels:  headless
Comic Dl
Comic-dl is a command line tool to download manga and comics from various comic and manga sites. Supported sites : readcomiconline.to, mangafox.me, comic naver and many more.
Stars: ✭ 365 (-2.41%)
Mutual labels:  automation
Fastlane Plugin Versioning
Extends fastlane versioning actions. Allows to set/get versions without using agvtool and do some other small tricks.
Stars: ✭ 357 (-4.55%)
Mutual labels:  automation
Autoscraper
A Smart, Automatic, Fast and Lightweight Web Scraper for Python
Stars: ✭ 4,077 (+990.11%)
Mutual labels:  automation
Tlsfuzzer
SSL and TLS protocol test suite and fuzzer
Stars: ✭ 335 (-10.43%)
Mutual labels:  automation

Marionette

Marionette is a Swift library which provides a high-level API to control a WKWebView.

The goal is to have the API closely mirror that of Puppeteer.

Installation

SwiftPM

dependencies: [
    .package(url: "https://github.com/LinusU/Marionette", from: "1.0.0"),
]

Carthage

github "LinusU/Marionette" ~> 1.0.0

Usage

let page = Marionette()

firstly {
    page.goto(URL(string: "https://www.google.com/")!)
}.then {
    page.type("input[name='q']", "LinusU Marionette")
}.then {
    when(fulfilled: page.waitForNavigation(), page.click("input[type='submit']"))
}.then {
    page.screenshot()
}.done {
    print("Screenshot of Google results: \($0)")
}

Hacking

The Xcode project is generated automatically from project.yml using XcodeGen. It's only checked in because Carthage needs it, do not edit it manually.

$ mint run yonaskolb/xcodegen
💾  Saved project to Marionette.xcodeproj
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].