success=0#抓取数
error=open('error.txt','a')
f = open('download_1.txt', 'a')
for line in open('URL.txt'):
    try:
        url=line
        soup = BeautifulSoup(getHTML(url), 'lxml')
        file_write()
        success+=1
        print('已成功抓取%d个,'%success+'url为:'+url)
    except:
        success+=1
        print('第%d'%success+'个失败,url为:'+url+'写入error.txt')
        error.write(url+'\n')
        continue
f.close()
error.close()
如上,出现异常后,我想将出错的url写入error文件,出现异常后可以print,但是error.txt中没有数据如何实现?
举报 使用道具
| 回复

共 1 个关于本帖的回复 最后回复于 2017-5-2 10:47

沙发
shenzhenwan10 金牌会员 发表于 2017-5-2 10:47:11 | 只看该作者
用下面的代码在Python3.5下测试了一下:
  1. try:
  2.             file_read = open('file1.txt')
  3.             all_text = file_read.read()
  4. except:
  5.             file_err = open('error.txt','a+')
  6.             file_err.write('append error message\r\n')
  7.             file_err.close()
  8. finally:
  9.             file_read.close()
复制代码
测试结果是except和finally下的语句都正常执行了
楼主是不是测试有误?

举报 使用道具
您需要登录后才可以回帖 登录 | 立即注册

精彩推荐

  • 运行Apple无法验证的程序的方法
  • 文本聚类分析软件的安装和使用方法
  • 利用AI阅读和分析文本:扣子COZE记录用户反
  • 在网页片段内直观标注——以B站评论采集为
  • 利用AI阅读和分析文本:使用COZE建设游记文

热门用户

GMT+8, 2024-12-24 10:02