我尝试使用strftime()为文件名添加时间戳时遇到了问题
这是代码:
from urllib.request import urlopen as uReq
from bs4 import BeautifulSoup as souce
import csv
import datetime
csv_file_stamped='prices_checked-'+time.strftime("%Y-%m-%d-%H:%M")+'.csv'
print(csv_file_stamped)
csv_file_new=open(csv_file_stamped,'w')
csv_writer=csv.writer(csv_file_new)
csv_writer.writerow(["Item_Link","Item_Price"])
csv_file=open('scraped_from_ebay.csv','r')
csv_reader=csv.DictReader(csv_file)
data=list(csv_reader)
links=len(data)
print("Total number of links to be checked: "+str(links)+"\n")
csv_file2=open('scraped_from_ebay.csv','r')
csv_reader2=csv.DictReader(csv_file2)
for line in csv_reader2:
uClient=uReq(line['Item_link'])
page_html=uClient.read()
uClient.close()
page_soup=souce(page_html, "html.parser")
price_dirty=page_soup.find("span",{"class":"notranslate"})
price_clean=price_dirty.get_text().replace("EUR ","")
csv_writer.writerow([line['Item_link'],price_clean])
有趣的是,我得到一个没有任何扩展名且文件中没有数据的空白文件。如果我使用csv_file_new=open('whatevername.csv','w')
可以正常工作。数据被写入文件,并且文件具有正确的名称和扩展名。但是,当我打印csv_file_stamped时,得到的正是所需的文件名。
知道是什么原因引起的问题吗?
预先感谢
答案 0 :(得分:0)
想通了!
csv_file_stamped=str('prices_checked-'+time.strftime("%Y-%m-%d-%H:%M")+'.csv')
我使用“ :”作为秒分隔符,并且在Windows中没有文件名:)