zsxsoft / my-beancount-scripts

Git repo to save my Beancount scripts
357 stars 71 forks source link

在导出微信交易明细时出现keyError错误? #16

Closed iT-Boyer closed 3 years ago

iT-Boyer commented 3 years ago

下载后执行导出命令

python3 import.py 微信支付账单\(20210718-20210818\).zip --out out.bean
  1. 错误提示打印日志:
    
    'gbk' codec can't decode byte 0x9e in position 11: illegal multibyte sequence
    'gbk' codec can't decode byte 0x9e in position 11: illegal multibyte sequence
    微信账单密码:****

Traceback (most recent call last): File "/Users/boyer/hsg/my-beancount-scripts/import.py", line 46, in new_entries = instance.parse() File "/Users/boyer/hsg/my-beancount-scripts/modules/imports/wechat.py", line 105, in parse entry, accounts[row['支付方式']], None, None) KeyError: '光大银行(8594)'


解决办法:`KeyError: '光大银行(8594)'`

在文件`./modules/accouts.py`中增加缺少的帐号:
```python
accounts = {
    "余额宝": 'Assets:Company:Alipay:MonetaryFund',
    '余利宝': 'Assets:Bank:MyBank',
    '花呗': 'Liabilities:Company:Huabei',
    '建设银行': 'Liabilities:CreditCard:CCB',
    '零钱': 'Assets:Balances:WeChat',
    '零钱通': 'Assets:Balances:WeChatT',
    '光大银行': 'Liabilities:CreditCard:CEB'
}
  1. 错误提示
    entry, accounts[row['支付方式']], None, None)
    KeyError: '/'

    解决办法:

    if row['支付方式'] != '/':
                    data.create_simple_posting(
                        entry, accounts[row['支付方式']], None, None)