0
実行ファイルを実行してその出力を解析し、QDLoader 9008
と一致させてからCOMポート値を取得すると、スクリプトの出力はCOM75
になります。 以下のスクリプトは、一致する文字列の行を表示しません。なぜですか?実行ファイルの出力を解析する
import os
import re
import subprocess
'''
C:\Dropbox\h_loader>lsusb.exe
Communications Port (COM1)
Intel(R) Active Management Technology - SOL (COM3)
COMPANY HS-USB QDLoader 9008 (COM75)
COMPANY HS-USB Diagnostics 9025 (COM64)
COMPANY HS-USB NMEA 9025 (COM63)
COMPANY HS-USB Diagnostics 9091 (COM81)
'''
cmd = 'lsusb.exe'
proc = subprocess.Popen(cmd.split(' '), stdout=subprocess.PIPE, stderr=subprocess.PIPE)
(output, error) = proc.communicate()
QD_line = re.search('QDLoader 9008',output)
print QD_line
EXPECTED OUTPUT:-
COM75
私が正しく理解している場合:
してから撮影した文字列にアクセスします。
は、あなたが興味を持っている出力の一部をキャプチャするためにあなたのパターンを変更する必要があります出力は '<_sre.SRE_Match object at 0x02B16988>'のようなものでしょうか? –
Rawing - thats correct –