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文件的方法,这种方法简单易用,操作高效,是一种最基本的保存数据的方法。