我是Python的新手,我正在搞乱代码,我想知道为什么我的代码,当for循环被破坏时,不会写入文件。
但是,当我没有打破for循环时,它会一遍又一遍地写入文件,删除之前的内容(我只希望它循环一次并在第一次迭代时获取数据) ):
def runExtract(self):
with open(self.fileIn) as f:
content = f.readlines()
#query = f.readlines()
for query in content:
result=google_search.SearchEngine.search(query, 3)
"""junk"""
file1=open(self.fileOutGoog,'r+b')
"""junk"""
for k in result:
#file.write(str(k.name)+"\t")
file1.write(str(k.link)+"\t")
#file.write(str(k.description)+"\t")
file1.write("\n")
#file=open(self.fileOutGoog,'rb')
file1.flush() """writes to file, deleting the '/url?q=' from html"""
file1.close()
file1 = open(self.fileOutGoog,'r')
filedata = file1.read()
file1.close()
newdata = filedata.replace('/url?q=','')
file1 = open(self.fileOutGoog,'w')
file1.write(newdata)
file1.flush()
file1.close()
result=bing_search.SearchEngine.search(query, 3)
"""junk"""
file2=open(self.fileOutBing,'w')
for k in result:
#file.write(str(k.name)+"\t")
file2.write(str(k.link)+"\t")
# file.write(str(k.description)+"\t")
file2.write("\n")
file2.flush()
file2.close()
break
print("done - check dir for results")
f.flush()
f.close()
我一直试图解决这个问题两天,但我还没有成功。