これが私のコードです:
for line in open(logfile):
if "ESSID" in line:
begin = line.replace(" ", "")
mid = begin.replace("ESSID:", "")
final = mid.replace('"', "")
print final
self.APList.SetStringItem(self.index, 0, final)
line = open(ilogfile).readline()
if begin in line:
connect = "yes"
else:
connect = "no"
self.APList.SetStringItem(self.index, 3, connect)
スキャンしているファイルは次のとおりです (そのうちの 1 つです)。
wlp2s0 IEEE 802.11bgn ESSID:"MomAndKids"
Mode:Managed Frequency:2.462 GHz Access Point: E0:91:F5:7D:C9:14
Bit Rate=18 Mb/s Tx-Power=20 dBm
Retry long limit:7 RTS thr=2347 B Fragment thr:off
Encryption key:off
Power Management:off
Link Quality=62/70 Signal level=-48 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:603 Missed beacon:0
私がテストしようとしているメインコード:
line = open(ilogfile).readline()
if begin in line:
connect = "yes"
else:
connect = "no"
「begin」の代わりに「final」を使用し、最初の行の代わりにファイル全体を読み取ろうとしました(「final」変数と「begin」変数の両方を使用)。どちらも機能しませんでした。なぜこれが機能しないのですか?
完全なソースについては、 https ://github.com/codywd/WiFiz/blob/master/main.py で入手できます。
編集: インデントは、実際のコードではなく、stackoverflow でのみ壊れています。
編集2:他のファイルにはこれが含まれています:
wlp2s0 Scan completed :
Cell 01 - Address: E0:91:F5:7D:C9:14
Channel:11
Frequency:2.462 GHz (Channel 11)
Quality=66/70 Signal level=-44 dBm
Encryption key:on
ESSID:"MomAndKids"
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 18 Mb/s
24 Mb/s; 36 Mb/s; 54 Mb/s
Bit Rates:6 Mb/s; 9 Mb/s; 12 Mb/s; 48 Mb/s
Mode:Master
Extra:tsf=00000278820a146f
Extra: Last beacon: 80ms ago
IE: Unknown: 000A4D6F6D416E644B696473
IE: Unknown: 010882840B162430486C
IE: Unknown: 03010B
IE: Unknown: 2A0104
IE: Unknown: 2F0104
IE: Unknown: 32040C121860
関連する部分は、そのファイルの先頭にあります。