这两段代码是一样的,运行结果却不一样,唯一能解释的就是运行出错的这个文件中的相关代码导致了此类问题
在这段代码之前有这么一段代码,我想应该是导致出现此类问题的原因所在:
f=open('update.csv',mode='a',encoding='utf-8',newline='')
csv_writer=csv.DictWriter(f,fieldnames=['title','version','href'])
csv_writer.writeheader()#写入表头
items=driver.find_elements(By.CSS_SELECTOR,'.structItem-cell:nth-child(2)')
for item in items:
#获取子网页链接地址
href=item.find_element(By.CSS_SELECTOR,'.structItem-title a').get_attribute('href')
#获取子网页标题
title=item.find_element(By.CSS_SELECTOR,'.structItem-title a').text
try:
#获取子网页版本号,如果无版本号就返回空值
item.find_element(By.CSS_SELECTOR,'.structItem-title span')
version=item.find_element(By.CSS_SELECTOR,'.structItem-title span').text
except:
version='null'
dict={
'title':title,
'version': version,
'href': href,
}
print(dict)
csv_writer.writerow(dict)
with open('update.csv',mode='r',encoding='utf-8') as f:
f_csv=csv.reader(f)
print(f_csv)
header=next(f_csv)
for i in f_csv:
print(i)
那么为什么我把同样的一段代码单独写在一个新的文件中,就不会报错呢?
import csv
with open('update.csv',mode='r',encoding='utf-8') as f:
f_csv=csv.reader(f)
print(f_csv)
header=next(f_csv)
for i in f_csv:
print(i)