はじめに
iOS上でPythonを実行できるとんでもないApp「Pythonista 3」を利用して,ブラウザで閲覧中のページのWhois情報を確認できるようにしてみました。
実行環境
- iPad Air 2 (iOS 11.4.1)
- Pythonista 3 version 3.2
- Google Chrome version 69.0.3497.105
ライブラリ
whois
は標準ではインストールされていないと思うので,追加してください。
StaShが使えるのであれば,pip install whois
でOKです。
StaShが使えないなら,こんなくだらないことをしていないで使えるようにしましょう。
ソースコード
whois.py
import appex
import socket
from urllib.parse import urlparse
from whois import whois
def pad(value, length):
return value + ' ' * (length-len(value)) + ': '
def print_data(title, value):
if value is None:
value = 'N/A'
print(f'{title}{value}')
def main():
url = appex.get_url()
host = urlparse(url).netloc
addr = socket.gethostbyname(host)
print(f'{host} ({addr})')
try:
info = whois(host)
max_len = max([len(k) for k in info])
for k, v in info.items():
if type(v) is list:
padding = ' ' * (max(len(k), max_len)+2)
print_data(pad(k, max_len), v[0])
for i in range(1, len(v)):
print_data(padding, v[i])
else:
print_data(pad(k, max_len), v)
except:
print('Failed to get information')
if __name__ == "__main__":
if appex.is_running_extension():
main()
[共有]に追加
- [Settings] > [Share Extension Shortcuts]を開く
- +マークをタップする
- ファイルを選択し,必要に応じてタイトルやアイコンを編集する
- Done!
実際に使ってみる
ブラウザの[共有]メニューから[Run Pythonista Script]を選択し,登録したショートカットをタップします。
画像では途中で切れていますがこんな感じの情報を確認できます。
実際にこの機能が役に立つのかは不明ですが……