Swiftで雑にSelenium! [Swift -> PythonKit -> Selenium]
ハイライト
Swift で PythonKit を利用して Selenium を動かします。
対象の読者
- Swift Package Manager の利用経験がある方
- Selenium がなんとなく分かる方
- Python を雰囲気で書ける方
向けに雑にご紹介致します。
PythonKit の導入
PythonKitのREADME に従い,Swift Package Manager を用いて導入します。
Package.swift
.package(url: "https://github.com/pvieito/PythonKit.git", .branch("master")),
Usage の通り,runした際にバージョンが出力されれば導入完了です。
main.swift
import PythonKit
let sys = try Python.import("sys")
print("Python \(sys.version_info.major).\(sys.version_info.minor)")
print("Python Version: \(sys.version)")
print("Python Encoding: \(sys.getdefaultencoding().upper())")
Selenium の導入
pip
と brew
を用いてインストールします。WebDriver は ChromeDriverにしました。何でも良いです。
$ pip install selenium
$ brew cask install chromedriver
Selenium チュートリアルを Swift から書く
ChromeDriver の Python チュートリアルを Swift で書き直してみましょう。こんな感じになります。
main.swift
import PythonKit
let time = Python.import("time")
let webdriver = Python.import("selenium.webdriver")
let driver = webdriver.Chrome("/usr/local/bin/chromedriver")
driver.get("https://www.google.com/")
time.sleep(5)
let searchBox = driver.find_element_by_name("q")
searchBox.send_keys("ChromeDriver")
searchBox.submit()
time.sleep(5)
driver.quit()
まとめ
Swift で雑に Selenium してみました。いかがでしたか?
PythonKit のチュートリアルにはなったかもしれません。
一方で,PythonKit 経由での import のため,Xcode で書いても残念ながら補完は効きません。エラーは出力されるので雑に雰囲気で書きましょう。それが本記事のオチです。
References
Author And Source
この問題について(Swiftで雑にSelenium! [Swift -> PythonKit -> Selenium]), 我々は、より多くの情報をここで見つけました https://qiita.com/YutoMizutani/items/9073103727faf94861f5著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .