Python で書式設定を使用してクエリを作成しようとしていますが、データのバイナリ入力を文字列エスケープする方法がわかりません。次のようなものが返されます。
に挿入し
python
ます。UDP
(Packet
,Destination
,Source
,Protocol
,Version
,Header_Length
,TTL
,Protoco l_UDP
,Target
, )値 (NULLSource_Port
, '00:0C:29:B2:14:0C', '192.168.178.50', '8', '4', '20', ' 128'、'17'、'192.168.178.24'、'52371'、'8888'、'29227'、'b'データ\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 \ x00\x00\x00\x00'');)Destination_Port
Length
Python で書式設定を使用してバイナリ文字列値を適切にエスケープするにはどうすればよいですか?
def setopUDP(destination, source, protocol, version, header_length, ttl, protocolEGP, target, source_port, destination_port, length, data):
query = ("INSERT INTO `python`.`UDP` (`Packet`, `Destination`, `Source`, `Protocol`, "
"`Version`, `Header_Length`, `TTL`, `Protocol_UDP`, `Target`, `Source_Port`, "
"`Destination_Port`, `Length`) VALUES (NULL, '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}', '{}');)"
.format(destination, source, protocol, version, header_length, ttl, protocolEGP, target, source_port, destination_port, length, data))
setopCON(query)