运行爬虫文件一直出现如下错误:
Traceback (most recent call last):
File “
20190418ceshiceshi.py
”, line 60, in
f.write("{}".format(pic))
ValueError: I/O operation on closed file.
with open('fenghuang.csv','a',encoding='utf-8') as f:
for x in etree_lists:
#pic=x.xpath(r"./a/img/@alt")[0].strip()
pic=x.xpath(r"./a/img/@alt")
print(pic)
print(''.join(pic))
#print({"{}".format(pic)})
#f.write(''.join(pic))
#f.write(pic)
f.write("{}".format(pic))
#f.close()
f.close()
后来发现是f.close() 缩进错误, 和for 下载同一级别即可解决此问题。
sys.stdout = io.TextIOWrapper(sys.stdout.buffer, encoding='utf8')
这段操作时指定print和文本文件输出的编码,但...
规避方法:int函数参数应该合法使用。int函数使用传送门:Python中的int函数使用。Python只允许对字典key的遍历,因此上面的遍历方式是错误的。方法一:使用dict[key]的方式同时获取value。试图将一个与数字无关的类型转化为整数,会抛出该异常。试图以二进制模式读取文件时指定编码方式。试图遍历字典时同时遍历键和值。方法二:使用items方法。
复制代码 代码如下:
totalCount = ‘100’ totalPage = int(totalCount)/20
ValueError: invalid literal for int() with base 10的错误
网上同样的错误有人建议用round(float(“1.0″)),但是解决不了我这个问题,round(float(“1.0″))是用于解决浮点数转换为整形数的,
而我这个则是因为原字符串转换为整形后做除法,虽然一段时间内可能不报错,但时间久了就会提示(其实就是一个warning,但是会强制终止你的程序),正确
运行爬虫文件一直出现如下错误:
Traceback (most recent call last):
File “D:/PyCharm1/workspace/AutoLogin/test/test1.py”, line 72, in
main()
File “D:/PyCharm1/workspace/AutoLogin/test/test1.py”, line 69, in main
find_Computer(URL,headers=headers)
File “D:/PyCharm1/workspa
with open(r'G:/1h.csv', 'w+', newline='') as c:
writer_csv = csv.writer(c,dialect="excel"
with open(r"G:/1h.txt", 'r', encoding='utf8')as f:
print(f.readlines())
报错:I/O operation on closed file.
Va...
报错:ValueError: I/O operation on closed file
ValueError: I/O operation on closed file。是指处理了已经被关闭的数据。一般是语句没有对齐。当python的处理代码不对齐的时候会出现这种情况。
使用with方法打开了文件,生成的文件操作实例在with语句之外是无效的,因为with语句之外文件已经关闭了。
报错部分代码:
class Maoyan(object):
def run(self):
[user1@localhost ~]$ lsDesktop Downloads Pictures Templates test.txt~Documents Music Public test.txt Videos[user1@localhost ~]$ cat test.txtwww.cvst.neti am a python leaner.hello worl...
pd.ExcelWriter错误(ValueError: I/O operation on closed file)
Python使用pd.ExcelWriter保存excel文件出现错误,自行尝试了多种方法,最终得以解决,本篇文章会根据博主自己实验过的方法都展示出来,为了自己做个笔记,急需解决方法的可以直接看最后一个。
目录pd.ExcelWriter错误(ValueError: I/O operation on closed file)问题尝试解决一、缩进问题二、with不用close三、最终解决方法
==================以下问题解决,均是lz初学Python遇到的
1.ValueError: I/O operation onclosed file
for line in f:
print("每一行的数据是:%s" % line)
f.close()
for line in f:
print("每一行的数据是:%s" % line)