Top AI Repos — open-source AI, indexed and scored
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
Top AI Repos tracks AI repositories on GitHub and answers two different questions about each one: is it moving right now, and would you bet a product on it.
WKZombie is a Swift framework for iOS/OSX to navigate within websites and collect data without the need of User Interface or API, also known as Headless browser. It can be used to run automated tests / snapshots and manipulate websites using Javascript.
| Date | Stars |
|---|---|
| 2026-07-24 | 1184 |
| 2026-07-25 | 1184 |
| 2026-07-28 | 1184 |
| 2026-07-30 | 1184 |
| 2026-08-06 | 1184 |
Today
— stars today
This week
— stars this week
This month
— stars this month
Momentum
0.0
growth rate 0.00%/day
# WKZombie [](https://twitter.com/mkoehnke) [](http://cocoadocs.org/docsets/WKZombie) [](https://github.com/Carthage/Carthage) [](https://github.com/apple/swift-package-manager) [](http://cocoadocs.org/docsets/WKZombie) [](http://cocoadocs.org/docsets/WKZombie) [](https://travis-ci.org/mkoehnke/WKZombie) [<img align="left" src="https://raw.githubusercontent.com/mkoehnke/WKZombie/master/Resources/Documentation/Logo.png" hspace="30" width="140px">](#logo) WKZombie is an **iOS/OSX web-browser without a graphical user interface**. It was developed as an experiment in order to familiarize myself with **using functional concepts** written in **Swift 4**. It incorporates [WebKit](https://webkit.org) (WKWebView) for rendering and [hpple](https://github.com/topfunky/hpple) (libxml2) for parsing the HTML content. In addition, it can take snapshots and has rudimentary support for parsing/decoding [JSON elements](#json-elements). **Chaining asynchronous actions makes the code compact and easy to use.** ## Use Cases There are many use cases for a Headless Browser. Some of them are: * Collect data without an API * Scraping websites * Automating interaction of websites * Manipulation of websites * Running automated tests / snapshots * etc. ## Example The following example is supposed to demonstrate the WKZombie functionality. Let's assume that we want to **show all iOS Provisioning Profiles in the Apple Developer Portal**. #### Manual Web-Browser Navigation When using a common web-browser (e.g. Mobile Safari) on iOS, you would typically type in your credentials, sign in and navigate (via links) to the *Provisioning Profiles* section: <img src="https://raw.githubusercontent.com/mkoehnke/WKZombie/master/Resources/Documentation/WKZombie-Web-Demo.gif" /> #### Automation with WKZombie The same navigation process can be reproduced **automatically** within an iOS/OSX app linking WKZombie *Actions*. In addition, it is now possible to manipulate or display this data in a native way with *UITextfield*, *UIButton* and a *UITableView*. <img src="https://raw.githubusercontent.com/mkoehnke/WKZombie/master/Resources/Documentation/WKZombie-Simulator-Demo.gif" /> **Take a look at the iOS/OSX demos in the `Example` directory to see how to use it.** # Getting Started ## iOS / OSX The best way to get started is to look at the sample project. Just run the following commands in your shell and you're good to go: ```bash $ cd Example $ pod install $ open Example.xcworkspace ``` __Note:__ You will need CocoaPods 1.0 beta4 or higher. ## Command-Line For a Command-Line demo, run the following commands inside the `WKZombie` root folder: ```ogdl $ swift build -Xcc -I/usr/include/libxml2 -Xlinker -lxml2 $ .build/debug/Example <appleid> <password> ``` # Usage A WKZombie instance equates to a web session. Top-level convenience methods like *WKZombie.open()* use a shared instance, which is configured with the default settings. As such, the following three statements are equivalent: ```ruby let action : Action<HTMLPage> = open(url) ``` ```ruby let action : Action<HTMLPage> = WKZombie.open(url) ``` ```ruby let browser = WKZombie.sharedInstance let action : Action<HTMLPage> = browser.open(url) ``` Applications can also create their own WKZombie instance: ```ruby self.browser = WKZombie(name: "Demo") ``` Be sure to keep `browser` in a stored property for the time of being used. ### a. Chaining Actions We
Excerpt of 22,306 characters
Read on GitHub27
Wei Wang · LINE Corp. · China
2
2
1
1
1
Would you bet a product on this? Bounded 0–100 and slow moving.
matched fp:41b6ac8e41975caa, topic:testing