问题描述:

  记录一下拼接文件名时间戳的过程,回顾下可能的问题所在,希望能帮到同样碰到这类问题的兄dei。

  进行单元测试时,最后使用HTMLTestRunner生成的HTML分析报告,需要添加一个时间戳来辨别,但是我写好后,一直报错:

if __name__ == '__main__':
suite = unittest.TestSuite()
tests = [TestCase("test_check_res")]
suite.addTests(tests)
now = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time())).decode('utf-8')
print now, type(now)
filename = setting.CASE_PATH + now + "result.html"  # CASE_PATH是获取的当前目录的绝对路径
with codecs.open(filename, 'w', 'utf8') as f:
runner = HTMLTestRunner.HTMLTestRunner(stream=f, title='Test Report', description='HTMLTestRunner.',verbosity=2)
runner.run(suite)

  报错情况为:

E:\huang\test\unit_test>py -2 testing.py
Traceback (most recent call last):
File "testing.py", line 43, in <module>
open(filename, 'wb')
IOError: [Errno 22] invalid mode ('wb') or filename: 'E:\\huang\\test\\2019-08-13 22:16:43 testing12345.html'

解决步骤:

1、真的是搜了好久的:IOError: [Errno 22] invalid mode ('wb') or filename:这段报错信息,大家的回复都是转义字符的问题:  

  • The following reserved characters:

    • < (less than)
    • > (greater than)
    • : (colon)
    • " (double quote)
    • / (forward slash)
    • \ (backslash)
    • | (vertical bar or pipe)
    • ? (question mark)
    • * (asterisk)

2、仔细瞅瞅我的代码,"%Y-%m-%d %H:%M:%S"中的:有问题,故修改为:

    now = str(datetime.datetime.now().strftime('%Y%m%d%H%M%S'))

完美解决,生成的文件名称为:20190813221814 testing12345.html

3、拼接需注意的事项:

  1)路径在前,时间戳、名称等在后

  2)不能含有以上列表中的特殊字符

  3)要写入特定编码的文本文件,请效仿codecs的示例,写入unicode,由codecs自动转换成指定编码。

python如何拼接时间戳到写入的文件名中的更多相关文章

  1. 将python的字典格式数据写入excei表中

    上面的为最终结果 import requests import re import xlwt import json # 导入必须的包: xlwt,json,requests,re. headers ...

  2. Python中将变量按行写入txt文本中

    案例一: 讲数组a 循环写入名称为2.txt的文档中 # -*-coding:utf8-*- import requests from lxml import etree a=[1,2,3,4,5,6 ...

  3. Python文件处理之文件写入方式与写缓存(三)

    Python的open的写入方式有: write(str):将str写入文件 writelines(sequence of strings):写多行到文件,参数为可迭代对象 首先来看下writelin ...

  4. 去除下载电影和电视剧文件名中的多余字符[python实现]

    讨厌下载电影和电视剧文件名中的多余字符(如网址和广告字样),,搞得文件名好长,可以使用下面的Python代码,自行修改即可. #!\usr\bin\env python # -*- coding: u ...

  5. python遍历一个目录,输出所有文件名

    python遍历一个目录,输出所有文件名 python os模块 os import os  def GetFileList(dir, fileList):  newDir = dir  if os. ...

  6. 用python在后端将数据写入到数据库并读取

    用python在后端将数据写入到数据库: # coding:utf- import pandas as pd from sqlalchemy import create_engine # 初始化数据库 ...

  7. python字符串拼接

    Python字符串拼接 在Python的实际开发中,很多都需要用到字符串拼接,python中字符串拼接有很多,今天总结一下: 用+符号拼接 用%符号拼接 用join()方法拼接 用format()方法 ...

  8. python文本 拼接或合并字符串

    python文本 拼接.合并字符串 场景: 拼接.合并字符串 在这个场景中,我们首先想到的当然是使用+或者+=将两个字符串连接起来 >>> a='a'    >>> ...

  9. Python 日期和时间戳的转换

    Python 日期和时间戳的转换 1. Python中处理时间的模块 Python中处理时间的模块有time.datetime和calendar. 在Python中表示时间的方式: 时间戳:10位整数 ...

随机推荐

  1. ie11 SCRIPT5011:不能执行已释放Script的代码

    依照我遇到的问题为例: (我的页面结构为:父页面中嵌套有iframe子页面) 1.造成这种情况的原因是:父页面初始化声明变量a为数组(数组对象是引用类型,赋值传递的是地址),创建iframe子页面后给 ...

  2. JAVA微信企业付款到零钱(十分钟搞定),附完整DEMO下载

    最近帮朋友做了一个简单的微分销系统,实现从企业付款到零钱分润的功能,简单记录一下微信企业付款到零钱的开发过程, 主要就是按规则封装好请求参数调用微信接口,涉及一些签名校验: A.接口流程 1. 获取用 ...

  3. Linux find 用法和参数

    Linux中find常见用法 ·find   path   -option   [   -print ]   [ -exec   -ok   command ]   {} \; find命令的参数: ...

  4. Android 组件化最佳实践 ARetrofit 原理

    本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/TXFt7ymgQXLJyBOJL8F6xg作者:朱壹飞 ARetrofit 是一款针对Android ...

  5. angularjs实现购物车批量删除,filter模糊查询,排序

    数据源 $scope.data=[ {num:1234,name:"ipad",price:3400.00,count:10}, {num:1235,name:"ipho ...

  6. Data Management Technology(2) -- Data Model

    1.Data Model Model Is the abstraction of real world Reveal the essence of objects, help people to lo ...

  7. 用了这么久HTTP, 你是否了解Content-Length?

    摘要: 理解HTTP协议... 原文:用了这么久HTTP, 你是否了解Content-Length和Transfer-Encoding ? 作者:朴瑞卿的博客 由Content-Length导致的问题 ...

  8. python脚本实现音频m4a格式转成MP3格式

    群里看到有人询问:谁会用python将微信音频文件后缀m4a格式转成mp3格式,毫不犹豫回了句:我会.然后就私下聊起来了 解决方法介绍如下: 工具:windows系统,python2.7,转换库ffm ...

  9. request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()+"/"

    String path = request.getContextPath(); String basePath = request.getScheme()+"://"+reques ...

  10. 201871010116-祁英红《面向对象程序设计(java)》第十一周学习总结

    博文正文开头格式:(2分) 项目 内容 <面向对象程序设计(java)> https://www.cnblogs.com/nwnu-daizh/ 这个作业的要求在哪里 https://ww ...