Welcome to Selenops, a Swift Web Crawler.
Given a webpage url and a word to search, Selenops will look for said word in that page, and all pages linked in there, recursively.
import Selenops // Initialize crawler. let crawler = Crawler( startURL: URL(string: "https://fivestars.blog/")!, maximumPagesToVisit: 10, wordToSearch: "Swift" // Specify the word to search here. ) // Set delegate. crawler.delegate = ... // Needs to conform to CrawlerDelegate // Start crawling! crawler.start()
crawler delegate will get information such as visited webpages, and in which webpages the specified word has been found.
Selenops is distributed via the Swift Package Manager:
to use it into an app, follow this tutorial and use this repository URL:
to use it in a package, add it as a dependency in your
let package = Package( ... dependencies: [ .package(url: "https://github.com/zntfdr/Selenops.git", from: "2.0.0") ], targets: [ .target( ... dependencies: ["Selenops"]) ], ... )
...and then use
import Selenops whenever necessary.
Command line tool
Selenops also comes with a command line tool that showcases its functionality.
To install it, clone the project and run make:
$ git clone https://github.com/zntfdr/Selenops.git $ cd Selenops $ make
Contributions and Support
All users are welcome and encouraged to become active participants in the project continued development — by fixing any bug that they encounter, or by improving the documentation wherever it’s found to be lacking.
If you'd like to make a change, please open a Pull Request, even if it just contains a draft of the changes you’re planning, or a test that reproduces an issue.
Thank you and please enjoy using Selenops!