import re
fr=open("test.html",'r')
i,j,tablestart=0,0,0
str=""
p=re.compile("<td.*?>(.*?)<\/td>")
for line in fr:
if "<table" in line:
tablestart=1
elif "</table>" in line and tablestart==1:
j,tablestart=0,0
m=p.search(line)
if m and tablestart==1:
str+='"' + m.group(1) + '"' + ","
if "</tr>" in line and tablestart==1:
print(str)
str=""
代码是从html表创建csv文件。 是否有更好或更有效的方法来编码? 我不是在寻找任何HTML解析器。
答案 0 :(得分:1)
也许是这样的:
for line in fr:
if re.search(r'"<td.*?>.+?<\/td>"',line):
line_table = re.findall(r'\>\.+?\<',line)
var = line_table
for var1 in var:
if var1 != False:
var2 = re.findall(r'\>\.+?\<',var1)[0]
output.write(var2+','+'\n')
else:
output.write(','+'\n')