# AccAss
**Repository Path**: smalltrees/AccAss
## Basic Information
- **Project Name**: AccAss
- **Description**: 方便会计从业者快速登录国税/地税(合并)系统的chome小插件,根据导入Excel字段自动填充登录表单。
- **Primary Language**: JavaScript
- **License**: MulanPSL-1.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 3
- **Forks**: 0
- **Created**: 2018-01-25
- **Last Updated**: 2021-11-17
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
#
会计助手
##一、插件简介
**名称:**
AccAss(会计助手)
**开发环境:**
- `Ubuntu`
- `VSCode`
**实现语言:**
- `javascript`
- `html`
**工具:**
- `WebPack`
- `Tesseract.js`
- `Jquery-3.2.1.js`
**简介:**
此插件为chrome插件,谷歌或360浏览器均可安装使用,此插件实现自动填写江苏电子地税系统和国税系统登录表单,其中地税验证码可自动识别,告别繁琐的登录操作,提高会计工作效率。
**目的:**
- 个人的项目,学习和进步
##二、实现过程
1. 本地安装Node.js和npm包管理器
2. 进入项目根目录,运行`npm init`初始化package.json
3. npm本地安装webpack(js库打包工具)[^1],运行`npm install --save-dev webpack`
4. npm本地安装Tesseract.js(验证码识别库),运行`npm install --save-dev tesseract.js`
5. 本地content-script引入Tesseract.js模块,用webpack打包生成bundle.js,bundle.js完成注入时的操作
6. popup,background和bundle依赖chrome的消息机制传输内容
7. 过程:
- popup加载文档后生成json对象发送到background,bundle识别验证码
- popup根据用户点击发生相应操作信息到background,background读取并返回相应的客户信息
- bundle根据当前网址的host,判断向那些DOM元素(表单)中填值
##三、使用操作
1. 将以下内容添加到本地hosts文件中[^2]
``` hosts
151.139.237.11 https://cdn.rawgit.com
151.139.237.11 cdn.rawgit.com
```
2. 重启计算机或者cmd命令`ipconfig /flushdns`,linux命令`/etc/init.d/networking restart`使hosts生效
3. 打开chrome或者360浏览器的扩展管理,勾选开发者模式
4. 加载已解压的文件,选择解压后的本项目文件夹
5. 按模板将登陆信息填写上
6. 每次打开浏览器后需加载模板文件
7. 进入地税/国税登陆页可点击小工具中的按钮可实现当前、上一个、下一个、跳转到等功能自动填写用户名、密码、验证码
##四、备注
- 修改hosts原因:Tesseract.js模块需要worker.js等文件,其所在服务器路由不一定可以找到,所以可以通过hosts指引
- 目前版本已整合国/地系统自动识别,实现地税登录表单的全识别填写,国税的验证码为点击汉字,尚有难度
##五、资料
1. [^1]:[webpack打包工具使用入门](https://www.jianshu.com/p/42e11515c10f)
2. [^2]:[修改本机hosts文件](https://jingyan.baidu.com/article/9f7e7ec04dacc06f281554dd.html)