如何在python中将对象写入文本文件

时间:2016-05-19 20:54:39

标签: python beautifulsoup text-files

我有这段代码:

import requests
from bs4 import BeautifulSoup

z = requests.get("http://www.reuters.com/article/us-myanmar-usa-sanctions-idUSKCN0Y92RK/")

url2 = 'http://www.reuters.com/article/us-myanmar-usa-sanctions-idUSKCN0Y92RK'
response2 = requests.get(url2)

soup2 = BeautifulSoup(response2.content, "html.parser")
for sentence in soup2.select("#articleText p"):
    block_text = sentence.get_text()
    print(block_text)

f = open("article.text" , "w")
f.write(block_text)

应该从block_text获取数据并将其放入文本文件中。不幸的是,我的文本文件只包含block_text对象的最后一句。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:0)

  

不幸的是,我的文本文件只包含block_text对象的最后一句。

当然,那是因为您只能在使用最后block_text的循环后写入文件。

相反,您可以这样做:

with open("article.text" , "w") as f:
    for sentence in soup2.select("#articleText p"):
        block_text = sentence.get_text()
        f.write(block_text)