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下的语句都正常执行了
楼主是不是测试有误?

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

精彩推荐

  • Gephi社会网络分析-马蜂窝游记文本分词并同
  • Gephi社会网络分析-基于马蜂窝游记文本以词
  • 知乎话题文本根据词语间距筛选后生成共词矩
  • 马蜂窝游记文本分词后以词语间距为筛选条件
  • 学习使用apriori算法挖掘关联关系

热门用户

GMT+8, 2024-4-20 14:38