Python_TXT文本存储

python_Txt存储

1、txt文件存储方法
  • 功能:提取热门话题的问题、回答者、答案全文并存于txt文件
  • open()方法打开文本文件,获取文件操作对象
file = open('explore.txt','a',encoding='utf8')
file.write('\n'.join(["question", "author", "answer"]))
file.write('\n' + '=' * 50 + '\n')
file.close()
  • with as语法,在with控制块结束时,文件会自动关闭,不用再调用close()方法;
with open('explore.txt', 'a', encoding='utf8') as file:
   file.write('\n'.join(["question", "author", "answer"]))
   file.write('\n' + '=' * 50 + '\n')
  • 推荐使用with open() as file保存文件方法
import requests
from pyquery import PyQuery as pq

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3710.0 Safari/537.36'}
html = requests.get('https://www.zhihu.com/explore',headers=headers).text
doc = pq(html)
items = doc('.explore-feed.feed-item').items()
for item in items:
    question = item.find('h2').text()  # 热门话题的问题
    author = item.find('.author-link').text()  # 热门话题的回答者
    answer = pq(item.find('.content').html()).text()  # 热门话题的答案全文
    # file = open('explore.txt','a',encoding='utf8')
    # file.write('\n'.join([question,author,answer]))
    # file.write('\n' + '=' * 50 + '\n')
    # file.close()
    with open('explore.txt', 'a', encoding='utf8') as file:
        file.write('\n'.join([question, author, answer]))
        file.write('\n' + '=' * 50 + '\n')
2、文件打开方式
方式解释
r以只读方式打开文件。
rb以二进制只读方式打开文件。
r+以读写方式打开文件。
rb+以二进制读写方式打开文件。
w以写入方式打开一个文件。如果文件已存在,则将其覆盖,如果文件不存在,则创建新文件。
wb以二进制写入方式打开一个文件。如果文件已存在,则将其覆盖,如果文件不存在,则创建新文件。
w+以读写方式打开一个文件。如果文件已存在,则将其覆盖,如果文件不存在,则创建新文件。
wb+以二进制读写方式打开一个文件。如果文件已存在,则将其覆盖,如果文件不存在,则创建新文件。
a以追加方式打开一个文件。如果文件已存在,新的内容会被写入到已有内容之后,如果文件不存在,则创建新文件写入。
ab以二进制追加方式打开一个文件。如果文件已存在,新的内容会被写入到已有内容之后,如果文件不存在,则创建新文件写入。
a+以读写方式打开一个文件。如果文件已存在,新的内容会被写入到已有内容之后,如果文件不存在,则创建新文件写入。
ab+以二进制读写方式打开一个文件。如果文件已存在,新的内容会被写入到已有内容之后,如果文件不存在,则创建新文件写入。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值