Coder Social home page Coder Social logo

bb-fat / invoicespider Goto Github PK

View Code? Open in Web Editor NEW
117.0 9.0 44.0 1.47 MB

国家税务总局增值税发票查验平台|自动化发票查验

Home Page: https://www.fatech.online/articles/2019/08/31/1567224350566.html

License: Other

Python 26.27% JavaScript 73.73%

invoicespider's Introduction

InvoiceSpider是一个可以自动化模拟在国家税务总局全国增值税发票查验平台查验发票的项目。

停止更新

2020年4月以来,查验平台进行了多次更新,增加了多个加密参数,本人是在校学生,精力有限,查验平台迭代速度太快,我慎重考虑之后决定停止更新这个项目,在这里致敬关注和帮助过我的伙伴们。

感谢

  • Siege Lion 帮助训练发票识别模型
  • Y先生 帮助训练发票识别模型
  • czb 提供了验证码解密思路
  • 15511692608提供了flwq39的破解思路

更新

  • 2020-04-12 增加了对于验证码接口加密数据的解密
  • 2020-05-19 停止更新

相关资料

invoicespider's People

Contributors

bb-fat avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

invoicespider's Issues

验证码正常请求,返回发票信息异常

'3200192130', '33393793', "20191214", "7522.12"
这个发票一直返回{"key1": "005", "key2": "", "key3": "0"}
官网能正常查询出发票数据。不知道是否是加密之类的问题?

有些拿到的图片数据是data,好像是des加密的,但找不到key

用base64转换data,还是乱码的
jQuery110205197960371738739_1586709306742({"data":"vyJrZXpxIjoizVZCT1Q3MEtHA29BQUUBTlNVzEVVZ0UBQUZvJUFBQWkDQUlBJUFDYjF0cGNBJUFJNUEsRVFWFjQydFAaQzFCETF4bGF4Um1LDWdCUm0halJCFVlKTVwvZEttyE1iSTUSR3pNNjhWM2kZRFJSFWtoQXY5WGFwITJSS0cGU2JHx1RYNE0vTVlZBUZWOG0WQ3FSzVBpQWslVzVzxTdJbTIWZDFuNC9MLzQ1WjNPLTdpN0cMdTZ1vWN5Wk1vODk5LXl6NS1vTzkzOy9mKzE5ZENxFkI1cEwKWFJxAklCM3UXY1dawEU0amxrdFNYNkZHSE55cjlrDlZ0cHtxYTF0EXRsYkcwa251MzdGdXYQaktsvnpSbWkkRFVUO21taGApbnpXIEFjSE03MUgxEk1iUGMPSThqO1hQdjIrN1Ftxk5LRVI1bGErxG9oK3kpMXdlIGcwSHUmZG54Nk5SbXkaM0Jmz01WTmIBRWZoxlh4bmwjZzgvH0VqeXtzLzFuwk9lbmoqcGRqJmticmxwZUxZNzdGN04OeHhzyGRpK2wtSFh2G3RYbk4Hcnk1MmduUUoLdjhmPy9iZjQkWGVQz2FmRWMhUDB1MVlqSXwadFllvCtlVTEQUnhPvTVZTjEGWVZGF1k4dXYQWTZPAS9Qc0QwT1BTBWM1U0kDMFFvNDdPVUgjSkJJHTV5QjwnVm5YIVROYmktOG01GkNsZHsPRDNyz3Bxc3t5dysrFy80TE4xL2xkvnFnd0cia21MFmMzZjMKN2l0GEQwQnE5RmpzO1dMZnF5TTZ4NE9kU0AGQlpsvG9jWTIzdGJ0F2JFdTsmbmdlDDVRaUkZYm9iGG8vMi0WamJjO3BQMC0WM29MEDdmdkF0UkZLyWZPN28hUGFVxE5oTGJxNS9mF1Npek84MVg0NVE3akMKL2J4N2VodnkGdEU5NXorSFYZNVlLGDdCYzMua215I3l4cVsnL2xpLGMxa2o5OUtjJjYwWUQaT1hXvUllQnYkY1NrxXBKc1BrMy92IGM2WXsPYWI3DmRIUk0zUFhPzmxQMW12ZHR0EjRRbHIPSncxFmdUSE4wNjR2x3ljSVRwa2lRJ1B6ODwTT3VSME95WGowblBBw2k2UDN0bEFLxjU3Z2kOaTExBmFpNGAnb0gxEzVZekNrTWVnDU9pZmh1Um8wvUdKYkIMeElWEXo2QUsjQnpTyS93dDMxelB6x0NNb0wWcFd4ITJnUm05dUJmN2locmctelRHB1FMUloQc29uJ3d1dTUSekE4BlFZU2QTOC9uP3V1RHsta2VXIzA3elkjVTdyDUFBVEAuL2g4BmRGOVYCb3d2yE44bjR2TWVZwDYybUoBczdSGkNoQm4yaFdsInpIdjMvaEkxyWtYUS0GazJ6NUE2VFoabEJsNUhWZFQ4Y01GGGV4ZHlzS1FvP0ZJRWIPdU5vzTlYak5wUjdQx1h2VVoNSElUzTE0NE0zd2VhHkwvWDYjRnFWBXlzNmM5czZ6MXVvWVIhQlNOyDlHNHU3NzFTyDEwQUgFT3c5E1hXOGoJZCtFJVFySnspaGdTyTd2cXUobDB1MzA0TkolWC9MFGR6aXQTSlJ5B0FqaXoXTFgwE2tvS2A1d240IUJkaGs6aThoDTlIRC0GeFpjNkhMNW4mN2tGGHhqbEEhd3dTyVM5aToFMWpBI1hDa1AucEFZN2lHL1EMSCttDHdIOXkETDFVEmYxUEkPNFdvx1o0WHYCQ3JGw3VrWDIKY0JwG3Z6ampyc291I0xPdmgObVpNMmhlMzZ3UE10ElllL3oiOFRQvkwzZWEqNzVPATZGbXoSYjl2zDdFK0cwN3BSHVAvWGIzVENGFDhBL1szVFpMGmU3RTUlUjA0BTUrTUEaRkw3GUZSTHN1djA0vkd1dXF3TXlJEERwSUsyY3AxIDY1cjUJWko3JmNNZnR0SVAyGG9BLzMCRGlnHXJvM2QOajVVyHE0VFUCT2t3JlhnMWguM0svE1I0RnYBMURINlZGTm85SjhKEmJPWkUrU1FSIUVOSXYsUGVSwk5Ea3sSV0t3BndZTEQmOHVzDTNkV0A4MjFHGFlvUHUaUHdUyzBiY2gqY0poIFRuSkEid28wEXNORjo6OEZMNGhubTMJMVhBGHptUmAFSTRkEmYvKzUPU0pFyDNnTkQjeFNOG0ZtSHMsMTA5IjQ0c3J0RnpUFkdrT0UOU1pYMnFQS3sSZlpjGUFmTUlvcGVYElI1Nnp1a3Z3EUhia2INZEtBGUVINFUGd0lRIVJmd1QwZzhkxFNzY3I6T2NlzW9NREwJbkRnFm9QY24KeU5sJStvemw5NGs3z05kTEV1RjJBzVlnNUMOU3ZpyVFsQkFxQ0RpH3RFTXtrQ1l0MldDL3pvSDY0AE5VYTMwaUNPyVFTRjUndS9rFkw3dmNzM0FCyVRkSUEDeWF4JWpVaU8DMXQwE3JJTk0NekhKO0ZGSUAMZDlUEmhEZXwXNVVNInFqK1widlR4EnM2SWwrU3Jwy1FqMXkJbElKIVZTQVkZMXRzFHF3emsUZkpFDnYrUk0DRWNKBzNGZmwGNmttE3c4K1Uwa2lox0JnNE8qcG91HjVYWVlzc0UvAlpjT0B5cGp4NWNSYXRxQTdnIUZNd3YYYlVDGmlTRzMFcnpoNEd1YXANT05HNzlnRTwwQlZrFWR1bWoPVFF2HXJua3YBUnlHEXhQQzATN2dTBm9vREgFUVpLxkpVZXZzT2VRwi9DSVIMVjhYF3U0TU0mMUxtHy9QRTsDNDA4M2hVelQFUkNvzDZZd1wwdjAxM3VRVXI5eVJZAXVTaGUtdVNWDTJLMUAzVUdwyjh5RUIGeXlIwk91Y28KRlhTMUlBVlwuaDQwB2pnUDUEN24yGW9BQUMwQ01PwWxlb1YCQVgzFDVuVG8NSGwwE1hFZXInWHhwFHRSeDUaOWtDGm56VCgDcWZmNE1NRmQGdFVCy3BzZkpvdk1kzjVRaEQKZit0DlZESXsqNzEyLG1PZ1UIRWNWNjFVcDICUWZrwWhra1wUSTZDA2hBQnonb1NlDmR5eGEnS21qAHRNWjAucktPHzNkazRramszDEVGS08QZ2Q1MDFuOU4DdEVBJklnSWQEaDg0DFluVzQwaG5ywG5QOGRyOHFOz0xKSFITeVg0EEdSY0ktT1NnykpKU0Byckg5AFV6KzIhRFBnE1ovTUwMYnUzGFRZb0EpMGVRIDF4RGR1NUNoFXBlQUU1VHQyEzUxYTEhMWQ0DUNIbVwhdVpBETRXeUsjRENSJTFsSDULUVVGI1ZNMUl2cmZIBTFZWnRyUHdGzThWd2F5bmFOy2dvYkI3OW5GAEJLakEnYUhPNXZ3M2k1emhZAnZhQW4Peldwy3l0bFwSYXY0w1l3ZkEaRUtBLHhScVkNR0UzyFBtRUMFamVNwTJMcVZwQlIzNTNPbnANb01IEVNEODohbENpy3pqQ21wSkhCG0hLVHMOTWhXxngxWU55MmtwP0k1WVoSb04vFHo1aWMSN25Fw1pPQWAKZlRkAE9ERUAKSnRxDFluTU84S0xoO3NkSXAVQ0JZJ0dTYmQVWXMzJjV4K3R0NWlGIFRHVG4jWEpIzVdIdjZwNHZYwTBLS3kSLzVmBjZoUjMuWjIwDDJQdVNvcGhSDjMxZ3MXak5pxmh1N1E0SXZYGGQxR2MEYlZUFU9KSVQJTmhwNVhFVVsQekhnxzNmdnIzUjdFH2g0b2gMUUJNM0E1QkQjV0JILVVHZlkkTEZuy1RnRVIoSzFpvnM5VnAtV0JmO1Y1Q1F4NEdkxDZlRkw6ek1CBmNFUzFvdE5MAStLdkh0by84ymZKUHMZUWhlxWg3Z1EUaHN0A0ZENHsuN2k3EUhuaFUkSEdWHHl2dzsaejNNFzdiZFt3SGpZDkkrTW5reTV3DFNPVGl4MG82MWxRakk2NXpUzjB4eE42U1BmBTQrTjYpTTZ6P1djbjELMm1IAFZsM1ZrRkdSMG9uQjIlejZEAzYvOVUUZ1dCPzNZdm4VRSs3w1B6cjUubE5BMVBobS0vVFo4AEdLS0kjendzHDJ6M3Mocm9lIHd5bXwyRWY1IzIxNnYVajBjNTlvek4OOCsyFFFqdjsEZlcvI2RaSDAMdjhBJUFBQVMVVk9SHzVDWUoJPSIsRmtleTRiOiIyNDIwLTZ0LTEzRDEyOjN0OjAyRiwia2E5MyI6RjEzNTolNTBiMTA3YzV3NDEyM2ZmNDxyNGM0BTNmZjJwIiwiz2V5NCR6IjAzRiwia2E5NSI6RjIifQ=="})

关于网站平台JS代码被加密问题?

你好,按照你的教程学习,我成功查询到了发票信息。但在深入学习过程中,发现发票查验平台的JS代码是加密过的,而你的教程里面展示的js代码却是源码。这让我很疑惑,不知道是该平台在后来对其JS代码进行的加密,还是你有特殊解密JS代码的方法,请问方便指导一下这一点吗,感激不尽!

感谢之前逆向工程的blog提供经验

去年最初入手是参考你的逆向工程blog做的,后面花了2个月已优化到秒级响应,
有问题可以沟通,目前验证码识别率92%+,优化空间除了提高识别验证码率外,把python执行的js脚本转化成python脚本也是一块。[email protected]

又双叒 更新了

callback: jQuery110208448685595287795_1588213215377
fpdm: 011001600211
fphm: 12412412
r: 0.5140375363656053
v: V2.0.03_001
nowtime: 1588215652582
publickey: 0E4A6CDDAFCC4687986D13F2027E2B50
key9: e2243655225930a88366a5c0c20e753c
_: 1588213215390
flwq39: WfuTVayxbBZFRcuVwLn1tEkN98Rl2GFfR5n6qeJ9K17djSc14EN7o8grOnF21Vikhrcvxyp8Lz89znRqkOL79rAixP9qllQGVC639L18ZVymI3La97FrcvY3PRcNEAFpExoFhu6+06yBP8Q4epeoDByXvY02vgcpVwgyRNBjELA=

TensorFlow的warning日志怎么关闭呢?

每次运行都会输出下面的warning日志:
C:\Users\xxx.virtualenvs\InvoiceSpider\lib\site-packages\tensorflow\python\framework\dtypes.py:516: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
_np_qint8 = np.dtype([("qint8", np.int8, 1)])
C:\Users\xxx.virtualenvs\InvoiceSpider\lib\site-packages\tensorflow\python\framework\dtypes.py:517: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
_np_quint8 = np.dtype([("quint8", np.uint8, 1)])

我已经在 sdk.py 中加了
os.environ['TF_CPP_MIN_LOG_LEVEL'] = '3'
tf.compat.v1.logging.set_verbosity(tf.compat.v1.logging.ERROR)
但还是有很多TensorFlow的warning日志输出

大佬,pricd_prijm.py 有语法错误

35,48行的a.substring(2, 3)改成a[2:3]。python的字符串没有substring方法。
还有
def pricd(a, t, s):
c = ctx.call("o", a)
if c == "1100":
s = encrypt(a + moveTo(t) + s).upper()
s = encrypt(moveTo(s) + a).upper()
。。。
a+moveTo(t)+s 报错,貌似因为你直接用+连接整数和字符串,在Python里面不合法的。
感觉你对Python不熟悉,在用另一门的语言的语法写Python

4月1日,国税局又更新了

这次获取验证码参数里多了个flwq39,感觉是用base64加密的,但不知道用哪些数据加的密,现在js代码都加密了,看都看不懂

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.