タスク要件
多数の小説のURLをtxt形式で削除する
ソリューション:
ディレクトリ内のすべてのファイルを一覧表示します
ファイルを読む
ファイル内のURLを置き換えます(すべての中国の小説、英語は直接置き換えることができます)
新しいファイルを書く
古いファイルを削除する
ソースコード
import re
import os
txtlist=os.listdir("C:\\Users\SAMSUNG\PycharmProjects\LoadBaiDu\\txt\\novel") #列出目录下的全部文件
for d in txtlist:
if(d.endswith("t")):
file=open("novel\\"+d,"r",encoding="gbk",errors="ignore") #编码问题
file1=open("novel\\ "+d,"w")
for i in file.readlines():
file1.write(re.sub(r"[a-zA-z]","",i)) #正则表达式匹配字母
file1.close()
file.close()
print(d)
os.remove("novel\\"+d)
問題が解決しました
pythonを使用すると、テキストのエンコードとデコードの問題が頻繁に発生します。非常に一般的なデコードエラーがタイトルに示されています。このエラーの解決策を以下に示します。「gbk」を「utf-8」に置き換えることもできます。
(1)まず、テキストを開くときに、次のようにエンコード形式を設定します。open
('1.txt'、encoding = 'gbk'); (2)。(1)が解決できない場合、テキストに表示されることがあります。一部の特殊なシンボルはgbkのエンコード範囲を超えています。たとえば、open( '1.txt'、encoding = 'gb18030');
(3)、(2)がまだ解決できない場合は、より広いエンコード範囲 'gb18030'を選択できます。テキストには、「gb18030」でもエンコードできない文字があります。これは、「ignore」属性を使用して無視できます。たとえば、open( '1.txt'、encoding = 'gb18030'、errors = 'ignore');
(4)、もう1つの一般的な解決策は、open( '1.txt')。read()。decode( 'gb18030'、 'ignore')です。