用一个命令从海外下载你的摘录。
itauscraper的Python项目详细描述
虽然api已经存在,但大多数银行仍然不提供表单 方便您的客户提取自己的数据。如此简单的事情 获得银行对账单要花多少钱是一件很难系统化的事。
我查了一下有没有准备好去意大利的东西,发现 银行刮板 do 提供多个脚本的kamus 有趣。不幸的是,ITAU已经不能工作了, 但是通过研究你的代码,我发现了一个好的提示:计算机ITAU站点的导航非常复杂 javascript魔术。但是移动一次性用品网站呢?
我激活了"移动模式" 从chrome获取 邮递员 以及 邮递员拦截器 跟踪所有请求并 宾果 。事实上,它要简单得多。
我决定写这篇文章来解释这个过程,强调 很奇怪,谁知道在发生变化时如何方便以后的维护。此脚本仅适用于物理人,因为ITAU强制 公司使用您的移动应用程序时不允许访问移动网站 通过浏览器。
工作原理
这段代码很简单,并在库中使用了python 3 导航请求 以及用于数据提取的 xpath 除了解释代码本身,重要的是理解 他需要复制的导航。http协议是异步的,要求每个请求再次发送 所有必要的信息。然而,银行的网站创造了一个动态 在需求变化之间建立依赖关系的服务器客户端包括 所以整个过程是按顺序进行的,充满了 正常情况下不需要的中间步骤。
使用 requests.session 我们能够重现连续导航的效果 在传播类 通过移动浏览器。
类ITaustraper使用会话执行登录 参见提取
登录
要在银行网站上登录,您需要访问 找到真实登录的url,根据我的理解,它会不时更改。使用正确的登录url,现在必须创建一个新的get asp.net在登录表单中注入的信息,然后执行post 认证。
登录完成后,我们将重定向到一个包含 导航。此页不在流中使用,但当我们要实现新的 itaustraper中的功能这是我们应该开始的地方。 :img alt="https://raw.githubusercontent.com/henricebastos/itauscraper/master/docs/itau-login.jpg.sr="https://warehouse-camo.cmh1.psfhosted.org/4603b619be619be619be61c363636363636c374f163264/666666666 8707722f226699666666666666665555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555656e7269717565626173746f732f69746573637260657f6d61737465722f646663732f974652d6c667696e2e6a7067"/>提取
当我们访问提取的url
在摘录页的末尾有四个链接,列出各时期的摘录
7、15、30和90天。这些URL似乎会不时地改变,就像登录时一样,
然后需要
- 我们从html中提取信息;
- 我们使用以下列重建表:date、description和value;
- 过滤与释放不对应的平衡线;
- 我们将每个 日期 转换为类型 日期时间.date ;
- 我们将每个 值 转换为类型 十进制 ;
卡
当我们访问卡的url时,将显示三个选项以列出:- 上一张发票;
- 当前发票;
- 下一张发票的部分发行。
这些URL似乎会不时更改,因此有必要提取链接
带卡片声明:
- 我们从html中提取信息;
-
我们将摘要重建为
字典 - 我们使用以下列重建表:date、description和value;
- 我们将每个 日期 转换为类型 日期时间.date ;
- 我们将每个 值 转换为类型 十进制 ;