posts = driver.find_elements_by_class_name('whiteLink')
for post in posts:
print(post.text)
saveFile = open('Names.txt','w')
saveFile.write(post)
saveFile.close()
posts = driver.find_elements_by_class_name('whiteLink')
saveFile = open('Names.txt','w')
for post in posts:
print(post.text)
saveFile.write(post.text + "\n")
saveFile.close()
posts = driver.find_elements_by_class_name('whiteLink')
with open('Names.txt','w') as saveFile:
for post in posts:
print(post.text)
saveFile.write(post.text + "\n")
如果上述操作不起作用(如您在评论中提到的),您可以存储一个字符串并立即打印或写入整个字符串
posts = driver.find_elements_by_class_name('whiteLink')
output = ("{}\n"*len(posts)).format([post.text for post in posts])
print(output)
with open('Names.txt','w') as saveFile:
saveFile.write(output)
一种解决方案是重新安排函数调用。在for循环之前,可以创建文件。对于post中的每个post,打印到屏幕并将相同的数据写入文件。需要记住的一件事是,并非所有字符串都有换行符(下面的“\n”)。这意味着,如果您只是在添加字符的情况下编写post.text,它将全部打印在文档中的一行上
另一个类似(坦率地说更好)的解决方案是使用上下文管理器。这样做的目的是确保文件在退出语句时自动关闭。如果在循环中遇到任何错误,这可能会更好
如果上述操作不起作用(如您在评论中提到的),您可以存储一个字符串并立即打印或写入整个字符串
相关问题 更多 >
编程相关推荐