如何用Python的f.write()将两个文件内容写入同一个文本文件?
解决方案:依次获取并写入两个文件内容
嘿,这个问题很好解决!你思路完全对——我们只需要分别发起两次请求获取两个文件的内容,然后按顺序写入同一个输出文件就可以了,这样file two的内容就会自动跟在file one下面。
下面是具体的实现步骤和代码示例:
- 第一步:分别发起请求获取两个文件的内容(根据你的实际场景,是HTML解析还是纯文本读取都可以调整)
- 第二步:打开目标输出文件,先写入file one的内容,再写入file two的内容(建议在两者之间加换行,让内容分界更清晰)
完整代码示例:
import requests from bs4 import BeautifulSoup # 替换成你实际的两个文件地址 file_one_url = "你的file one访问地址" file_two_url = "你的file two访问地址" # 获取file one的内容(这里保留你原有的BeautifulSoup解析逻辑) response_one = requests.get(file_one_url) soup_one = BeautifulSoup(response_one.text, 'html.parser') bio_one = soup_one.find(...) # 替换成你提取file one内容的具体逻辑 content_one = bio_one.text # 获取file two的内容,和file one的处理逻辑一致 response_two = requests.get(file_two_url) soup_two = BeautifulSoup(response_two.text, 'html.parser') bio_two = soup_two.find(...) # 替换成你提取file two内容的具体逻辑 content_two = bio_two.text # 打开输出文件,按顺序写入两个内容 with open("combined_output.txt", "w", encoding="utf-8") as f: f.write(content_one) f.write("\n\n") # 加两个换行分隔内容,让排版更清晰(可选) f.write(content_two)
关键说明:
- 用
with open操作文件更安全,它会自动帮你关闭文件,避免资源泄漏 - 两次独立的请求确保我们能分别拿到两个文件的完整内容
- 按顺序执行
f.write()就能保证file two的内容紧跟在file one下方 - 如果你的文件是纯文本而非HTML,直接用
response.text即可,不需要BeautifulSoup解析
这样修改后,你的程序就能把两个文件的内容都写入同一个输出文件啦!
内容的提问来源于stack exchange,提问作者Brian Haney
相关产品推荐
相关产品推荐

