Selenops
Selenops copied to clipboard
A Swift Web Crawler π·
Selenops
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.
Usage
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()
The crawler
delegate will get information such as visited webpages, and in which webpages the specified word has been found.
Installation
Selenops is distributed via the Swift Package Manager:
-
to use it into an app, follow this tutorial and use this repository URL:
https://github.com/zntfdr/Selenops.git
. -
to use it in a package, add it as a dependency in your
Package.swift
:
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
Credits
Selenops was built by Federico Zanetello as an example of a Swift script.
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!