現在Webインターフェイスから作成したPythonスクリプトを呼び出したいと思っています。ツイストでこれができるのか、それとももっと良い方法があるのかと思っていました。私がこれを構築できるように、これに関するガイドまたはドキュメントを本当に探しています。
以下は、ユーザーがWebページにアクセスしたときに何が起こるかの例です。
Welcome, enter the IP you want to ping:
Submit
[送信]ボタンを押すと、以下のスクリプトが呼び出され、Webページに配置されたIPがスクリプトに渡されます。(python3 ping.py 192.168.66.5)
#!/usr/bin/env python3
import sys
import subprocess
ip = sys.argv[1]
ping =subprocess.Popen(('ping -c 3 ' + ip),shell=True, stdout=subprocess.PIPE)
pingresult = str(ping.communicate()).split('\\n')
for p in pingresult:
print(p)
Webページで見たい出力は、Webページでは次のようになります。
64 bytes from 192.168.66.5: icmp_seq=1 ttl=64 time=0.020 ms
64 bytes from 192.168.66.5: icmp_seq=2 ttl=64 time=0.015 ms
64 bytes from 192.168.66.5: icmp_seq=3 ttl=64 time=0.017 ms
--- 192.168.66.5 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 1998ms
rtt min/avg/max/mdev = 0.015/0.017/0.020/0.004 ms
これはできることですか?
はい、それは可能であり、Twistedには実行中のプロセスに関するドキュメントがあります。スクリプトが現在のものと同じくらい単純な場合は、Twistedのreactor.spawnProcess()
関数の使用を検討する必要があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加