如何从网站上获取银行对账单?

18

我需要从多个不同的来源获取银行账户对账单。我希望能以某种标准化的方式获取这些数据,如CSV、OFX或XML等格式。我只需要能够获取这些数据即可。我将使用自己的账户来获取交易记录,因此不应该有太多法律问题。像Mint.com这样的网站是如何获得银行对账单的呢?他们只需请求您的账户信息、URL,然后就可以开始操作了。我该如何做到这一点?

5个回答

8

使用您喜欢的语言编写一个屏幕抓取器来完成它。自动化处理。

通常,银行通过其在线服务向您提供最多三个月的交易记录。

不要忘记在屏幕抓取失败时触发紧急按钮。

主要目的是自动化处理,以便手动运行的痛苦消失,这样您只会看到账户的“不断”更新的交易记录。


我对屏幕抓取完全没有经验。我用Python编写我的应用程序,您有什么模块推荐从哪里开始吗?我找到了一个名为Bankjob的Ruby解析器,但我确实需要它在Python中运行。我的银行支持将交易导出为OFX,但除了通过抓取之外没有特别自动化的方法。谢谢。 - Naftuli Kay
2
看看Beautiful Soup:http://www.crummy.com/software/BeautifulSoup/。它相当不错。 - holygeek
3
如何编写一个屏幕抓取器,以应对某些银行在登录过程中运行复杂的JavaScript,并且需要从命令行而非GUI运行抓取器? - Michael
1
现在我们可以使用JavaScript引擎运行无头的webkit。请查看phantomjs - holygeek
我相信在没有直接数据源的情况下,爬取数据是可行的方法。我创建了一个用于解析金融交易HTML表格的项目:https://github.com/bunsn/boiler。要为您自己的银行添加支持,您需要编写一个基本的“账单定义”。它不处理登录或爬取多个账单,但作为爬取工具的一部分可能会有用。 - Dom Christie
holygeek,@DomChristie:您如何使用PhantomJS之类的工具下载语句(PDF)?PhantomJS不是完全无法下载吗? - user541686

6
如果您对一个简单的个人解决方案感兴趣,一种简单的方法是让Mint汇总您的所有购买记录,并使用现有的爬虫程序下载它们。类似于这样:https://github.com/mrooney/mintapi

2

其他需要考虑的主要事项包括Plaid(更商业化的产品,但看起来很不错)和https://www.buxfer.com,其具有免费的API。最近,Mint为数据抓取工具提供了更多阻力。


0

获取您的交易并将它们保存为CSV或XLS格式,使用iCreateOFX Basic v4转换为OFX和/QIF格式,或尝试v5 beta


-1

我之前读过一篇全面的技术文章,但是我找不到了。根据我的记忆,这就是 Mint 从你的银行获取数据的方法:

  1. 从这家公司的 API 进行查询:http://www.finappstore.com/
  2. 如果银行不在上述 API 中,则回退到屏幕抓取

我有点困惑那个网站如何帮助我。他们有获取语句的API吗?也就是说,值得我花时间注册吗?;) - Naftuli Kay
我认为finappstore API只能通过他们的代码/协议从flex中获取。 - Colin Harrington
2
这个网站已经死了。 - Rehan

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接