python教你如何跳过验证识别登录并自动发送弹幕

news2025/1/13 13:58:20

前言

嗨喽,大家好呀~这里是爱看美女的茜茜呐

又到了学Python时刻~


开发环境:

  • Python 3.8

  • Pycharm 2021.2

  • 谷歌浏览器

  • 谷歌驱动


模块使用:

  • selenium >>> pip install selenium==3.141.0 指定版本安装

  • time

  • 打码平台

安装python第三方模块:

  1. win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车

  2. 在pycharm中点击Terminal(终端) 输入安装命令


selenium: 模拟人的行为, 去操作浏览器

  1. 打开浏览器

  2. 输入站网站

  3. 点击登陆按钮

  4. 输入账号 / 输入密码

  5. 点击登陆按钮

    弹出一个验证码

  6. 验证码识别

  7. 点击确定 登陆成功


代码展示

模拟登录过验证码

导入模块

from selenium import webdriver
# 导入账号密码 自己写的文件
from password import VideoAccount, VideoPassword, account, password
# 导入时间模块
import time
# 导入打码平台代码
from chaojiying import Chaojiying_Client
# 导入selenium动作链
from selenium.webdriver import ActionChains

PS:本篇完整源码如有需要的小伙伴可以加下方的群去找管理员免费领取

“”"

  1. 打开浏览器

    executable_path=“chromedriver” 驱动路径

如何下载谷歌浏览器驱动

  1. https://registry.npmmirror.com/binary.html?path=chromedriver/

  2. 选择和你浏览器版本最相近的 <大版本一样, 小版本最相近的就可以了>

  3. 驱动放在哪里

    • 和代码放在一起

    • 放在python安装目录里面

“”"

driver = webdriver.Chrome(executable_path=r'D:\download\anaconda\chromedriver.exe')
  1. 输入/访问B站网站

“”"

  1. 点击登陆按钮

    • 先通过元素定位 登陆按钮在什么地方

    • 定位到之后, 在进行操作<点击操作>

通过css选择器查找元素 --> 复制粘贴

  1. 输入账号 / 输入密码

    • 先通过元素定位 账号输入框在什么地方

    • 先通过元素定位 密码输入框在什么地方

    然后再进行账号密码输入操作

  2. 点击登陆按钮

    • 先通过元素定位 登陆在什么地方

    • 然后再进行点击操作

“”"

点击登陆按钮 click 点击

driver.find_element_by_css_selector('.bili-header .header-login-entry').click()

延时等待 元素加载

time.sleep(1)

输入账号 send_keys 输入内容

driver.find_element_by_css_selector('div.bili-mini-account input').send_keys(VideoAccount)

输入密码

driver.find_element_by_css_selector('div.bili-mini-password input').send_keys(VideoPassword)
time.sleep(1)

点击登陆按钮

driver.find_element_by_css_selector('div.bili-mini-login-register-wrapper .login-btn').click()
time.sleep(2)

“”"

验证码识别

“”"

获取验证码图片

img_label = driver.find_element_by_css_selector('.geetest_holder.geetest_silver')

截图保存

img_label.screenshot('yzm.png')

调用超级鹰打码平台 固定写法, 别人代码给你写法

用户中心>>软件ID 生成一个替换 96001

chaojiying = Chaojiying_Client(account, password, '96001')	

读取验证码图片

9004 表示验证码类型 42,241|42,241|59,86|144,115

move_to_element_with_offset 在验证码上面进行点击操作

im = open('yzm.png', 'rb').read()
pic_str = chaojiying.PostPic(im, 9004)['pic_str']
# for循环遍历, 把坐标一个一个取出来
for index in pic_str.split('|'):
    x = index.split(',')[0]
    y = index.split(',')[1]
    ActionChains(driver).move_to_element_with_offset(img_label, int(x), int(y)).click().perform()

time.sleep(1)
driver.find_element_by_css_selector('.geetest_commit_tip').click()

自动发弹幕

获取账号cookie, 自动发送直播弹幕机器人~ <切换账号>

导入模块

import requests
import random
import time
content_list = ['主播真厉害', '爱了爱了', '666', '真棒']
num = 1
while True:
    if num == 10:
        break
    time.sleep(3)

    data = {
        'bubble': '0',
        'msg': random.choices(content_list),
        'color': '16777215',
        'mode': '1',
        'fontsize': '25',
        'rnd': '1668605910',
        'roomid': '23875324',
    }

    response = requests.post(url=url, data=data, headers=headers)
    print(response.text)
    num += 1

尾语

感谢你观看我的文章呐~本次航班到这里就结束啦 🛬

希望本篇文章有对你带来帮助 🎉,有学习到一点知识~

躲起来的星星🍥也在努力发光,你也要努力加油(让我们一起努力叭)。

最后,博主要一下你们的三连呀(点赞、评论、收藏),不要钱的还是可以搞一搞的嘛~

不知道评论啥的,即使扣个6666也是对博主的鼓舞吖 💞 感谢 💐

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/94279.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

程序猿的福音——猿如意使用有感

猿如意介绍&#xff1a; 猿如意是一款面向开发者的辅助开发工具箱&#xff0c;包含了效率工具、开发工具下载&#xff0c;教程文档&#xff0c;代码片段搜索&#xff0c;全网博文搜索等功能模块。帮助开发者提升开发效率&#xff0c;帮你从“问题”找到“答案”。 猿如意的下…

KEIL5软件仿真支持的器件

问题的提出 用KEIL进行软件仿真&#xff0c;想观察一下处理器STM32F091RCY的I2C和DAC引脚输出的波形&#xff0c;发现无法向波形中添加信号&#xff0c;如下图所示 当在命令行中输入 dir vtreg 指令时&#xff0c;仅仅能够显示内核的寄存器&#xff0c;外设的寄存器无法输出&a…

【DevOps实战系列】第九章:详解Sonarqube搭建及集成Jenkins环境

个人亲自录制全套DevOps系列实战教程 &#xff1a;手把手教你玩转DevOps全栈技术 质量安全审计&#xff1a;Sonarqube Sonarqube(声呐)大家应该不陌生&#xff0c;通过扫描代码分析代码质量与代码安全&#xff0c;方便我们快速定位代码缺陷、潜在风险。 个人建议&#xff1a;…

希尔贝壳邀您参加 ISCSLP 2022 Program

第十三届中文口语语言处理国际会议将于2022年12月11-14日&#xff08;本周日~下周三&#xff09;正式开启&#xff0c;本次会议中的部分Session将通过语音之家视频号进行线上直播&#xff0c;欢迎大家参加&#xff01; 官网&#xff1a;www.iscslp2022.org 大会简介 中文口语…

别再秃头背锅了,这个小技巧统计第三方接口耗时很安逸

前言 之前我有写过一篇记录生产环境事故的文章&#xff0c;获得了不少好评。 后续&#xff0c;我们团队有做过一些讨论&#xff0c;为了支撑运营维护&#xff0c;搭建了更好的日志平台 GranfaLoki&#xff0c;也引入了 SkyWalking 做链路追踪。 但过程中也遇到了一些问题&#…

30多个Flatsome主题优秀电商网站案例

想知道您可以使用 WordPress Flatsome WooCommerce主题&#xff08;最畅销的电子商务主题之一&#xff09;制作什么样的网站吗&#xff1f; 我们已经浏览了使用这个非常受欢迎的电商主题尽可能多的案例&#xff08;近1000个&#xff09;&#xff0c;并汇总了30个Flatsome主题优…

windows安装es、kibana教程

目录 前言 第一个部分&#xff1a;安装ES的包 1.安装成功的截图 2.下载es的安装包 3.检查本地的jdk的安装是否存在问题 4.修改config文件夹下面的配置 第二部分&#xff1a;windows 安装Kibana可视化工具 1.下载安装包 2.安装过程中遇到的问题 3.安装6.0.0的版本是可以…

【Android】BlueTooth开发记录

Ble开发中,存在着两个角色&#xff1a;中心设备角色和外围设备角色。 外围设备&#xff1a;一般指非常小或者低功耗设备,更强大的中心设备可以连接外围设备为中心设备提供数据。外设会不停的向外广播&#xff0c;让中心设备知道它的存在。 例如小米手环。中心设备&#xff1a;可…

学习周报-20221216

文章目录一 centos6和centos7系统的服务启动与关闭二 Linux下的/etc/pam.d/system-auth配置文件参数各列参数说明1&#xff09;第一列2&#xff09;第二列3&#xff09;第三列和第四列常用类说明三 Linux用户密码过期策略一 相关文件二 修改密码三 设置密码过期策略四 Linux中使…

将渲染计算搬到云端,开启低成本、强交互、沉浸式体验

云渲染可以解放本地计算需求&#xff0c;这意味着生产力的大幅提升。 云渲染的基本原理是将3D渲染应用部署到云端&#xff0c;接收本地的控制指令发送到云端&#xff0c;云端启动游戏引擎并进行画面渲染&#xff0c;编码成视频流传输到本地。 不难看出&#xff0c;云渲染技术的…

3节点Fate集群实战记录(全网最详细)--横向联邦学习

集群配置 集群的三台服务器分别部署了fate-10000, fate-9999, fate-9998命名空间&#xff0c;集群的具体部署情况请转&#xff1a;link查看。 文章后面以命名空间名来区分操作所在的节点&#xff08;注意节点的实际名字不等于命名空间名&#xff09;。集群的配置信息如下&…

【嵌入式开源库:cJSON】 一个轻量级C语言JSON数据解析库用法详解

cJSON简介 cJSON是使用C语言编写&#xff0c;用来创建、解析JSON文件的库。cJSON特点就是工程文件简单&#xff0c;只有一个.c和一个.h&#xff0c;但提供函数接口功能齐全&#xff0c;麻雀虽小五脏俱全&#xff0c;使得在嵌入式工程中使用起来得心应手。 cJSON获取 https:/…

小程序本地 存储/获取值以及删除本地的值

场景&#xff1a;小程序本地存储的方法 wx.setStorageSync&#xff1a;直接给定key和value值 wx.setStorage&#xff1a;需指定key及value&#xff0c;然后再指定相应的值 小程序获取本地值的方法 wx.getStorageSync&#xff1a;直接指定key值获取到对应的数据 wx.getStorage&a…

Node.js模块系统的实现机制简析

目录nodejs模块系统简介C版native模块的定义和加载加载过程JavaScript接口层万能的binding机制JavaScript版native模块的定义和加载js2c技术NativeModule的工作原理Node启动时构造NativeModule对象&#xff0c;完成name到source的映射懒加载机制总结nodejs模块系统简介 Node.j…

[附源码]Nodejs计算机毕业设计基于的校园商城Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置&#xff1a; Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分…

Linux系统编程2——进程介绍

文章目录前言一、程序和进程二、并行和并发三、进程控制块PCB进程状态四、创建进程相关函数1、fork函数fork函数总结2、getpid/getppid3、exec函数族3.1、execl函数3.2、execlp函数3.3、exec函数族原理介绍五、进程回收1、为什么要进行进程资源回收2、孤儿进程3、僵尸进程4、进…

传奇GEE引擎版本架设

传奇GEE引擎版本架设 我是艾西今天给大家分享下传奇GEE引擎版本的架设教程 &#xff08;仅做参考&#xff0c;以下内容为显示素材打码部分请读者理解遵守平台GZ&#xff09; 传奇GEE引擎版本我们架设游戏需要用到的工具&#xff1a; 版本&#xff08;游戏类型服务端&#xf…

[附源码]Node.js计算机毕业设计高校学生管理系统Express

项目运行 环境配置&#xff1a; Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境&#xff1a;最好是Nodejs最新版&#xff0c;我…

[附源码]Node.js计算机毕业设计公司疫情健康信息管理系统appExpress

项目运行 环境配置&#xff1a; Node.js最新版 Vscode Mysql5.7 HBuilderXNavicat11Vue。 项目技术&#xff1a; Express框架 Node.js Vue 等等组成&#xff0c;B/S模式 Vscode管理前后端分离等等。 环境需要 1.运行环境&#xff1a;最好是Nodejs最新版&#xff0c;我…

冰刃(IceSword)的使用方法(基础篇)

冰刃是一款功能强大的杀毒辅助软件&#xff0c;深受很多杀毒高手的青睐&#xff0c;这里我介绍一下冰刃这个软件的简单使用方法&#xff0c;供大家参考。说句实话&#xff0c;我不是高手&#xff0c;不能像高手一样把一些软件运用自如&#xff0c;所以这个方法可能有很多纰漏或…