一連の .html ファイルからすべての内部リンクを削除したいと考えています。基本的な考え方は、で始まるものはすべて<a href=
リンクであり、で始まらない<a href="http
場合は内部リンクであるということです。
これを実現するために、小さな Python スクリプトを作成しようとしています。これで、各ファイルの前半は完全に処理されますが、同じリンクで一貫してクラッシュします。明らかにタイプミスや欠落をチェックしまし</a>
たが、何も表示されません。スクリプトを再実行すると、「問題のリンク」は削除されますが、そのまま残ります。スクリプトを再実行する</a>
と、ますます多くのリンクが削除されるようですが、すべての内部リンクを 1 回の実行で切り捨てたいと思います。
私が間違っていることを誰かが提案していますか?私が使用しているコードについては、以下を参照してください。
tList = [r"D:\@work\projects_2013\@websites\pythonforspss\a44\@select-variables-having-pattern-in-names.html"]
for path in tList:
readFil = open(path,"r")
writeFil = open(path[:path.rfind("\\") +1] + "@" + path[path.rfind("\\") + 1:],"w")
flag = 0
for line in readFil:
for ind in range(len(line)):
if flag == 0:
try:
if line[ind:ind + 8].lower() == '<a href=' and line[ind:ind + 13].lower() != '<a href="http':
flag = 1
sLine = line[ind:]
link = sLine[:sLine.find(">") + 1]
line = line.replace(link,"")
print link
except:
pass
if flag == 1:
try:
if line[ind:ind + 4].lower() == '</a>':
flag = 0
line = line.replace('</a>',"")
print "</a>"
except:
pass
writeFil.write(line)
readFil.close()
writeFil.close()