这两天在写爬虫,但由于前期只想将数据保存下来就行,后期直接进行预处理就行,但突然发现在批量预处理时txt文件明显比不上csv格式,所以我需要将我已经爬取的txt文件保存为csv格式。
这是读取txt文件,并将每行不需要的数据给剔除掉,因为爬虫时有很多的空数据没有处理
for line in f.readlines():
# print (line)
l.append(str(line))
while '\n' in l:
l.remove('\n')
while ' \n' in l:
l.remove(' \n')
while ' \xa0\n' in l:
l.remove(' \xa0\n')
f.close()
print("len=", len(l))
这段是提取出我需要的行单独保存,并将提取的数据保存单独的数组
for i in range(len(l) - 1):
if "景色:" in l[i]:
one = l[i][55:-2]
two = l[i + 1][55:-2]
three = l[i + 2][56:-2]
t.append(i-1)
zongstart.append([one, two, three])
zongping.append(l[i - 1])
print(i)
# s1.append(i + 2)
# s1.append(i + 1)
# s1.append(i)
# s1.append(i - 1)
for i in t:
s1.append(i + 2)
s1.append(i + 1)
s1.append(i)
s1.append(i + 3)
s1.sort(reverse=True)
for i in s1:
l.remove(l[i])
# l.remove(l[i+2])
# l.remove(l[i+1])
# l.remove(l[i])
# l.remove(l[i-1])
zongping.extend(l)
cha = len(zongping) - len(zongstart)
for i in range(cha):
zongstart.append("")
将保数据保存为csv
info = {}
info['neirong'] = zongping
info["start"] = zongstart
print(len(zongping), len(zongstart))
print(info)
df = pd.DataFrame(info)
df.to_csv(r"C:\Users\Administrator\Desktop\%s.csv" % p[40:-4], index=False, sep=',', encoding='utf-8')