Skip to main content

No project description provided

Project description

极验验证模块的python语言绑定

特别鸣谢

  • Hobr 提供大量技术支持
  • woshiluo 提供大量技术支持和指导,修复很多本项目的bug
  • mikumifa 提供部分实现思路

使用方式

  1. pip install bili_ticket_gt_python
  2. import bili_ticket_gt_python
  3. slide = bili_ticket_gt_python.SlidePy()
  4. click = bili_ticket_gt_python.ClickPy()
  5. 通过slide和click调用相关函数

绑定的函数见py.rs文件

demo

执行测试

import bili_ticket_gt_python
slide = bili_ticket_gt_python.SlidePy()
click = bili_ticket_gt_python.ClickPy()

try:
    #改为注册滑块challenge和gt的url
    validate = slide.test("http://127.0.0.1:5000/pc-geetest/register")
    print(validate)
except Exception as e:
    print("识别失败")
    print(e)

try:
    #改为注册点选challenge和gt的url
    validate = click.test("https://passport.bilibili.com/x/passport-login/captcha?source=main_web")
    print(validate)
except Exception as e:
    print("识别失败")
    print(e)

通过gt和challenge调用 仅支持点选验证码

import bili_ticket_gt_python
click = bili_ticket_gt_python.ClickPy()
try:
    (gt, challenge) = click.register_test("https://passport.bilibili.com/x/passport-login/captcha?source=main_web")
    validate = click.simple_match(gt, challenge)
    print(validate)
except Exception as e:
    print("识别失败")
    print(e)

通过gt和challenge调用(自动重试) 仅支持点选验证码

import bili_ticket_gt_python
click = bili_ticket_gt_python.ClickPy()

try:
    (gt, challenge) = click.register_test("https://passport.bilibili.com/x/passport-login/captcha?source=main_web")
    validate = click.simple_match_retry(gt, challenge)
    print(validate)
except Exception as e:
    #验证码失效有两种可能性
    # 1. 验证码生成过后过了太久,时间导致的失效
    # 2. 验证码重试次数过多,需要unset,unset接口请自己扒下来封装吧,我真的懒得封装了
    print("自动重试仍然有极小概率报错(超时时间即为验证码失效时间)")
    print(e)
#不要100%依赖于demo!!!动动脑子

分步调用

import bili_ticket_gt_python
slide = bili_ticket_gt_python.SlidePy()

try:
    (gt, challenge) = slide.register_test("http://127.0.0.1:5000/pc-geetest/register")
    (_, _) = slide.get_c_s(gt, challenge)
    _type = slide.get_type(gt, challenge)
    if _type != "slide":
        raise Exception("验证码类型错误")
    (c, s, args) = slide.get_new_c_s_args(gt, challenge)
    #注意滑块验证码这里要刷新challenge
    challenge = args[0]
    key = slide.calculate_key(args)
    #rt固定即可
    #此处使用内嵌js二进制运行时生成w, 你也可以自己接入生成w的逻辑函数
    w = slide.generate_w(key, gt, challenge, c, s)
    (msg, validate) = slide.verify(gt, challenge, w)
    print(validate)
except Exception as e:
    print("识别失败")
    print(e)
import bili_ticket_gt_python
import time
click = bili_ticket_gt_python.ClickPy()

try:
    (gt, challenge) = click.register_test("https://passport.bilibili.com/x/passport-login/captcha?source=main_web")
    (_, _) = click.get_c_s(gt, challenge)
    _type = click.get_type(gt, challenge)
    if _type != "click":
        raise Exception("验证码类型错误")
    (c, s, args) = click.get_new_c_s_args(gt, challenge)
    before_calculate_key = time.time()
    key = click.calculate_key(args)
    #rt固定即可
    #此处使用内嵌js二进制运行时生成w, 你也可以自己接入生成w的逻辑函数
    w = click.generate_w(key, gt, challenge, c, s)
    #点选验证码生成w后需要等待2秒提交
    w_use_time = time.time() - before_calculate_key
    print("w生成时间:", w_use_time)
    if w_use_time < 2:
        time.sleep(2 - w_use_time)
    (msg, validate) = click.verify(gt, challenge, w)
    print(validate)
except Exception as e:
    print("识别失败")
    print(e)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

bili_ticket_gt_python-0.3.0.tar.gz (55.5 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

bili_ticket_gt_python-0.3.0-cp313-cp313-win_amd64.whl (8.7 MB view details)

Uploaded CPython 3.13Windows x86-64

bili_ticket_gt_python-0.3.0-cp313-cp313-manylinux_2_38_x86_64.whl (14.8 MB view details)

Uploaded CPython 3.13manylinux: glibc 2.38+ x86-64

bili_ticket_gt_python-0.3.0-cp313-cp313-macosx_11_0_arm64.whl (9.6 MB view details)

Uploaded CPython 3.13macOS 11.0+ ARM64

bili_ticket_gt_python-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.13macOS 10.12+ x86-64

bili_ticket_gt_python-0.3.0-cp312-cp312-win_amd64.whl (8.7 MB view details)

Uploaded CPython 3.12Windows x86-64

bili_ticket_gt_python-0.3.0-cp312-cp312-manylinux_2_38_x86_64.whl (14.8 MB view details)

Uploaded CPython 3.12manylinux: glibc 2.38+ x86-64

bili_ticket_gt_python-0.3.0-cp312-cp312-macosx_11_0_arm64.whl (9.6 MB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

bili_ticket_gt_python-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

bili_ticket_gt_python-0.3.0-cp311-cp311-win_amd64.whl (8.7 MB view details)

Uploaded CPython 3.11Windows x86-64

bili_ticket_gt_python-0.3.0-cp311-cp311-macosx_11_0_arm64.whl (9.6 MB view details)

Uploaded CPython 3.11macOS 11.0+ ARM64

bili_ticket_gt_python-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl (10.7 MB view details)

Uploaded CPython 3.11macOS 10.12+ x86-64

bili_ticket_gt_python-0.3.0-cp310-cp310-win_amd64.whl (8.7 MB view details)

Uploaded CPython 3.10Windows x86-64

bili_ticket_gt_python-0.3.0-cp39-cp39-win_amd64.whl (8.7 MB view details)

Uploaded CPython 3.9Windows x86-64

bili_ticket_gt_python-0.3.0-cp38-cp38-win_amd64.whl (8.7 MB view details)

Uploaded CPython 3.8Windows x86-64

File details

Details for the file bili_ticket_gt_python-0.3.0.tar.gz.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0.tar.gz
Algorithm Hash digest
SHA256 2a347804d71a8a57a270eb9a0da41169184991cd27c4756aba72476428ee82de
MD5 ec87c806e76feaf411aaeeafa029364b
BLAKE2b-256 3d7e35d276793937f1b9a9ada66dad78580bef0e1314575d75c74cca02f6b054

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp313-cp313-win_amd64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp313-cp313-win_amd64.whl
Algorithm Hash digest
SHA256 322fb007102518e490a8ccaf512b706761603f30517e71d93ba6b38a5d28a482
MD5 98aa2b06a07a1cde0deda67e79532737
BLAKE2b-256 458943c59ab212871295cc1b4d34cfeb4ef7431f85624de85d31b71e6139c46c

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp313-cp313-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp313-cp313-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 f741a840aa239884e501fe65f6d3c03477349f0e307c5ff0303f8f689c52587c
MD5 97637a35cc305b0e8dda1f027b25f4af
BLAKE2b-256 c315d5461c396c75753d4056c243cffc1b8d0db4390a828d9fbc1d3fab1d97d6

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp313-cp313-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp313-cp313-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 2e22abb2d12f836090599189500e9edbe1d4fc57c2ab7853e6f30cf65aa54e86
MD5 433dd138860f404729635066007ecfbd
BLAKE2b-256 44377147d30c7ad8c38d700f05b1dd912d87ca4698687715c47ee64f7a7264f6

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp313-cp313-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 b5765ac463d40a898d03f4db3af90a52f167b135a5019f32fc2c813cadb7f7a3
MD5 6b6bb56a571d688cf175bd2e140d1860
BLAKE2b-256 cadf2e37a2e7677da2aef6f1b22aed0136c5e7686286f6f055edfb18b4a99018

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp312-cp312-win_amd64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 52c7dbfe7e622466bcf34c84020745fb116929322c624f47cc7493d130ad9685
MD5 b2d2b4c325a2adbbf5c8392d9087e1f2
BLAKE2b-256 74d383f9ea9618b2e876861bfe4d3b2057411d05834bccb80c63fab12a01d482

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp312-cp312-manylinux_2_38_x86_64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp312-cp312-manylinux_2_38_x86_64.whl
Algorithm Hash digest
SHA256 516d1ed66c493f45dfd44305f8754dbc2dd94cc70f8ffb395144ef6447011e82
MD5 70f1627f84ee20f6ba67bc6f3448f713
BLAKE2b-256 c91e7273c549a824587580cd48e607036c836889cb9076528228d6f24a47956d

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 e8f838bf4fb0baafba232fd4609b25ad192375834fd1fd01074c7a76568a684c
MD5 9e4fb8a9d445144753fba28c900c21aa
BLAKE2b-256 a79bd269e81dd45e0d1766aa29f5280321777ec625c30c3fc3d54656abbeb6f0

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 c9071436c60c651167c30be089d9d96bfdb92580af69dc33dbb61ff6254dc895
MD5 539a5e11957a470fe199780d355a184f
BLAKE2b-256 627804d82f25836c25d82a459f69690734f6f3edd740b6c1c1d257bfc73a5622

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp311-cp311-win_amd64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp311-cp311-win_amd64.whl
Algorithm Hash digest
SHA256 34751137f9c75d91d7b858efde03cdd34b96ff48f0b2cd6fc8d2434c8ba33096
MD5 c4f19efe5e42bddf128211b88ddfc62d
BLAKE2b-256 684b8774e805ffbfd413019210306634066cd12a2473b62522791d8e1b460803

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp311-cp311-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 996b064787c2c59211b3dce2372d680a9e12dcdc4ace77180e57ed510d79c8b3
MD5 7249da227b18cea18e9eace8f834fa89
BLAKE2b-256 4f389fc5a8020bdc20f831f3956de9d3615588e49a2358d2d13797644cc04741

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp311-cp311-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 f56d4892d477b97c71a67d27233e2a994c60d34f7b98ad130f0a451cfc88b67c
MD5 e2c1c1cb6efca7483dda3131d7111717
BLAKE2b-256 06f84144b0487da22c5cba57a25e8719c0c5c54529e86b32b5e9ea7068cda3c5

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 c67a32603fb8ef388fea4346ea43ba7a757443d5a7f466cb41085f64a8fe53e7
MD5 7b116d3bbcd3efd0a778bfb6a0a1ae51
BLAKE2b-256 6928657e9e32187feede1e3c0ab1458d62a76a850bedd5ef3c4ef1f38048160e

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp39-cp39-win_amd64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 50fd91aa4d4b2270439b039ec18b865c0689b6f15dd60bfa8abdcb5355ca683c
MD5 dc7d42fe128bc458e133409ede5b2621
BLAKE2b-256 a0c33be679feb23df0c23ed05db33db287eaa1a40a623a55340abb942371fc7c

See more details on using hashes here.

File details

Details for the file bili_ticket_gt_python-0.3.0-cp38-cp38-win_amd64.whl.

File metadata

File hashes

Hashes for bili_ticket_gt_python-0.3.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 03c8e453d6713f5f736733d5a94a7484f4b58aebb9e50a195c26c7abdb6e2d83
MD5 cdb0ebc773e01acfa84248c3438e2a50
BLAKE2b-256 de4579669caed825063b64b48e9fc155dcbb1dac09672cea7f86dba3843198a2

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page