python教程之TXT文本数据存储的处理操作

将数据保存到TXT文本的操作非常简单,而且TXT文本几乎兼容任何平台,但是有一个缺点,就是不利于检索。所以如果对检索和数据结构要求不高,追求方便的话,可以采用TXT文本存储。本文中,我们就来看一下如何利用Python保存TXT文本文件。

1.设置目标

我们需要保存知乎上“发现”页面的“热门话题”部分,并将其问题和答案统一保存成文本形式。

2.具体的操作方法

我们先用requests将网页源代码获取下来,然后使用pyquery解析库解析,接下来将提取的标题、回答者、回答保存到文本,具体的代码如下:

import requests
from pyquery import PyQuery as pq


url=https://www.zhihu.com/explore
headers = {
    User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1
}
html = requests.get(url,headers=headers).text
doc = pq(html)
items = doc(.explore-tab .feed-item).items()
for item in items:
    question = item.find(h2).text()
    author = item.find(.author-link-line).text()
    answer = pq(item.find(.content).html()).text()
    file = open(explore.txt,a,encoding=utf-8)
    file.write(
.join([question,author,answer]))
    file.write(
 + = * 50 + 
)
    file.close()

这里主要是为了演示文件保存的方式,因此requests异常处理部分在此省略,首先我们用requests提取知乎的“发现”页面,然后将热门话题的问题、回答者、答案全部提取出来,然后利用Python提供的open()方法打开一个文本文件,获取一个文件操作对象,这里赋值为file,接着利用file对象的write()方法将提取的内容写入文件,最后调用close()方法将其关闭,这样抓取的内容即可成功写入文本之中了,运行程序我们会发现在本地生成一个explore.txt文件。

这样热门问答的内容就被保存成文本形式了。这里注意open()函数的第一个参数要保存的是目标文件名称,第二个参数是a,代表一追加的方式写入到文本。另外,指定了文件的编码为utf-8。最后,写入完成后,还需要调用close()方法来实现关闭文件对象。

3.简化写法

文件的写法其实有一种简写的方式,就是使用with as语句。在with控制块结束时,文件会自动关闭,所以就不用再调用close()方法了。这种保存方式可以简写如下:

以上就是利用Python将结果保存为TXT文件的方法,这种方法简单易用,操作高效,是一种最基本的保存数据的方法。

经验分享 程序员 微信小程序 职场和发展