Python读取写入TXT正确姿势[通俗易懂]

Python2.7IDEPycharm5.0.3在憋一个豆瓣电影抓取的“大招”,分流记录一下保存过程直奔主题1.自己写入txt直接上核心代码:withopen(“douban.txt”,”w”)asf:f.write(“这是个测试!”)这句话自带文件关闭功能,所以和那些先open再write再close的方式来说,更加pythontic!结果就是这样:2.将文件输

大家好,又见面了,我是你们的朋友全栈君。

Python 2.7
IDE Pycharm 5.0.3


爬下来,解析,存储,分析,可视化--一气呵成,当然我还在学前面三个哈哈哈

直奔主题


1.自己写入txt

直接上核心代码:

with open("douban.txt","w") as f:
        f.write("这是个测试!")

这句话自带文件关闭功能,所以和那些先open再write再close的方式来说,更加pythontic!

结果就是这样:

这里写图片描述


2.将文件输入(print)的内容写入txt

我并不喜欢手写字符,更多时候用到的就是将程序跑出来的print写到txt中保存,比如说刚从豆瓣抓的内容,我想写进去,该怎么保存呢。这就用到了for循环啦。关于豆瓣的爬取请见我的前面那篇博客

我就是想把输出框的文字保存而已
这里写图片描述

#分模块测试,txt写入测试
# -*- coding: utf-8 -*-
from selenium import webdriver
import selenium.webdriver.support.ui as ui
import time

#driver_item=webdriver.Firefox()
driver_item=webdriver.PhantomJS(executable_path="phantomjs.exe")
url="https://movie.douban.com/subject/3541415/?tag=%E7%A7%91%E5%B9%BB&from=gaia_video"
wait = ui.WebDriverWait(driver_item,10)
driver_item.get(url)

try:
    driver_item.find_element_by_xpath("//img[@class='bn-arrow']").click()
    #wait.until(lambda driver: driver.find_element_by_xpath("//div[@class='review-bd']/div[2]/div/div"))
    time.sleep(1)
    comments_deep = driver_item.find_element_by_xpath("//div[@class='review-bd']/div[2]/div")

    print u"深度长评:"+comments_deep.text
    #print type(comments_deep.text)#<type 'unicode'>

    comments_wr=comments_deep.text.encode('utf-8')
    #print type(comments_wr)#<type 'str'>

    #title="盗梦空间"#中文命名文件名乱码,内容可用 title="Inception"
    with open("%s.txt"%title,"w") as f:#格式化字符串还能这么用!
        for i in comments_wr:
            f.write(i)
except:
    print 'can not caught the comments!'

比较常用MODE

这里写图片描述


不清空连续写入

没有文件时候会自动创建的,但是!如果我重新对此进行写入,那么会先清空,然后再写,就是说以前写的没了,这样搞不好吧,我可是要记录很多东西的啊,万能的a出现了。。。

把核心代码改成这样就可以了,记得把w改成a,至于那个分割线问题,因为后续写入和前面已经有的会混在一块,所以我做分割用:

with open("%s.txt"%title,"a") as f:#格式化字符串还能这么用!
        f.write("\n-------------------------------------我是分割线-----------------------------------------\n")
        for i in comments_wr:
            f.write(i)

效果是这样的,不够好看自己再加细节,比如换行多几次

这里写图片描述



That’s all

用到啥学啥,学得快又学的牢
这里写图片描述


致谢

Python:文件的读取、创建、追加、删除、清空
@王志 –Python: 删除已安装的模块或包(modules or packages)

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/127568.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • FEC编码_无线电FEC

    FEC编码_无线电FECFEC编码:ES流:也叫基本码流,包含视频、音频或数据的连续码流.PES流:也叫打包的基本码流,是将基本码流ES流根据需要分成长度不等的数据包,并加上包头就形成了打包的基本码流PES流.TS流:也叫传输流,是由固定长度为188字节的包组成,含有独立时基的一个或多个节目,适用于误码较多的环境.在DVB-S标准中,只规定了1/2、2/3、3/4、5/6、7/8这5种FEC码率,为什么只规定这5…

    2022年8月11日
    5
  • 机器学习是什么?

    机器学习是什么?WhatisMachineLearning?机器学习现在是一大热门,研究的人特多,越来越多的新人涌进来。不少人其实并没有真正想过,这是不是自己喜欢搞的东西,只不过看见别人都在搞,觉着跟大伙儿

    2022年8月1日
    7
  • ISP基本框架及算法介绍

    ISP基本框架及算法介绍ISP基本框架及算法介绍ISP(ImageSignalProcessor),即图像处理,主要作用是对前端图像传感器输出的信号做后期处理,主要功能有线性纠正、噪声去除、坏点去除、内插、白平衡、自动曝光控制等,依赖于ISP才能在不同的光学条件下都能较好的还原现场细节,ISP技术在很大程度上决定了摄像机的成像质量。它可以分为独立与集成两种形式。ISP的Firmw…

    2022年5月29日
    69
  • 突然的:图形设备驱动程序错误代码 43 -(已解决)

    突然的:图形设备驱动程序错误代码 43 -(已解决)昨天在使用Unity制作一些效果时,突然整体屏幕黑了,显示内容后,屏幕的分辨率变得很低,由原来的1920*1080,变成只有1024*768。然后我没管,继续使用Unity干活。然后发现Unity只要运行(PlayMode),CPU就占用了100%。我就知道电脑显卡之类的出问题了,我想准备要查看是什么问题的,但是刚好要搬家了。所以今天打开Unity运行后,发现CPU还是100%,然后使用:…

    2022年6月28日
    60
  • 本地AAA认证「建议收藏」

    本地AAA认证「建议收藏」1.1问题如图配置IP地址,通过AAA对远程登录用户进行控制 配置R1的AAA为本地认证和授权,通过域huawei来管理用户 配置R3的AAA为本地认证和授权,通过域HCIE来管理用户 配置R1/3端的用户/密码为Huawei/hcia,用户权限为01.2方案使用eNSP搭建实验环境,如图-1所示。图-11.3步骤实现此案例需要按照如下步骤进行。1)…

    2022年6月6日
    31
  • nessus安装使用教程_ps激活成功教程版安装教程

    nessus安装使用教程_ps激活成功教程版安装教程Nessus在Windows版本和Linux版本环境下安装

    2022年8月31日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号