我要做的是:
我有一个包含简单 html 代码的文件:
Content-type:text/htmlrnrn
<html>
<head>
<meta charset="utf-8"/>
<title>DNS checker CGI script</title>
.
.
我想读取此文件并使用特殊字符 (,\r,%...( 打印其内容,因此输出如下所示:
Content-type:text/html
<html>
<head>
<meta charset="utf-8"/>
我的蟒蛇代码:
#!/usr/bin/python
f = open('/var/www/html/dns-checker/dns_not_correct.txt', 'r')
print(f.read(), end='')
提前感谢您的帮助
我相信您还需要设置编码。让我知道这是否适合您!
f = open('/var/www/html/dns-checker/dns_not_correct.txt', 'r', encoding='utf-8-sig')
print(f.read(), end='')
所以,这是你的问题:
In [17]: mystring = r"""Content-type:text/htmlrnrn
...: <html>
...: <head>
...: <meta charset="utf-8"/>
...: <title>DNS checker CGI script</title>"""
In [18]: print(mystring)
Content-type:text/htmlrnrn
<html>
<head>
<meta charset="utf-8"/>
<title>DNS checker CGI script</title>
我相信最通用的解决方案是使用codecs
:
In [20]: import codecs
In [21]: codecs.escape_decode(mystring)
Out[21]:
(b'Content-type:text/htmlrnrnn<html>n<head>n<meta charset="utf-8"/>n<title>DNS checker CGI script</title>',
108)
In [22]: print(codecs.escape_decode(mystring)[0])
b'Content-type:text/htmlrnrnn<html>n<head>n<meta charset="utf-8"/>n<title>DNS checker CGI script</title>'
In [23]: print(codecs.escape_decode(mystring)[0].decode())
Content-type:text/html
<html>
<head>
<meta charset="utf-8"/>
<title>DNS checker CGI script</title>