前言
嗨喽~大家好呀,这里是魔王呐 ❤ ~!
开发环境:
-
Python 3.8
-
Pycharm 2021.2
-
谷歌浏览器
-
谷歌驱动
模块使用:
-
selenium >>> pip install selenium==3.141.0 指定版本安装
-
time
-
打码平台
如果安装python第三方模块:
-
win + R 输入 cmd 点击确定, 输入安装命令 pip install 模块名 (pip install requests) 回车
-
在pycharm中点击Terminal(终端) 输入安装命令
如何配置pycharm里面的python解释器?
-
选择file(文件) >>> setting(设置) >>> Project(项目) >>> python interpreter(python解释器)
-
点击齿轮, 选择add
-
添加python安装路径
pycharm如何安装插件?
-
选择file(文件) >>> setting(设置) >>> Plugins(插件)
-
点击 Marketplace 输入想要安装的插件名字 比如:翻译插件 输入 translation / 汉化插件 输入 Chinese
-
选择相应的插件点击 install(安装) 即可
-
安装成功之后 是会弹出 重启pycharm的选项 点击确定, 重启即可生效
selenium: 模拟人的行为, 去操作浏览器
-
打开浏览器
-
输入B站网站
-
点击登陆按钮
-
输入账号 / 输入密码
-
点击登陆按钮
弹出一个验证码
-
验证码识别
-
点击确定 登陆成功
代码展示
点选验证码识别, 模拟登陆
导入模块
from selenium import webdriver
# 导入账号密码 自己写的文件
from password import VideoAccount, VideoPassword, account, password
# 导入时间模块
import time
# 导入打码平台代码
from chaojiying import Chaojiying_Client
# 导入selenium动作链
from selenium.webdriver import ActionChains
“”"
-
打开浏览器
executable_path=“chromedriver” 驱动路径
如何下载谷歌浏览器驱动
-
https://registry.npmmirror.com/binary.html?path=chromedriver/
-
选择和你浏览器版本最相近的 <大版本一样, 小版本最相近的就可以了>
-
驱动放在哪里
-
和代码放在一起
-
放在python安装目录里面
-
“”"
driver = webdriver.Chrome(executable_path=r'D:\download\anaconda\chromedriver.exe')
- 输入/访问B站网站
“”"
-
点击登陆按钮
-
先通过元素定位 登陆按钮在什么地方
-
定位到之后, 在进行操作<点击操作>
通过css选择器查找元素 --> 复制粘贴
-
-
输入账号 / 输入密码
-
先通过元素定位 账号输入框在什么地方
-
先通过元素定位 密码输入框在什么地方
然后再进行账号密码输入操作
-
-
点击登陆按钮
-
先通过元素定位 登陆在什么地方
-
然后再进行点击操作
-
“”"
点击登陆按钮 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')
调用超级鹰打码平台 固定写法, 别人代码给你写法
chaojiying = Chaojiying_Client(account, password, '96001') #用户中心>>软件ID 生成一个替换 96001
读取验证码图片
im = open('yzm.png', 'rb').read()
pic_str = chaojiying.PostPic(im, 9004)['pic_str']
9004 表示验证码类型 42,241|42,241|59,86|144,115
for循环遍历, 把坐标一个一个取出来
for index in pic_str.split('|'):
x = index.split(',')[0]
y = index.split(',')[1]
# move_to_element_with_offset 在验证码上面进行点击操作
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, 自动发送直播弹幕机器人~ <切换账号>
自动发送弹幕
推荐往期文章
🎯 博主所有文章素材、解答、源码、教程领取处:点击
对python感兴趣的小伙伴也可以看一下博主其他相关文章哦~
python小介绍:
python是什么?工作前景如何?怎么算有基础?爬数据违法嘛?。。
python数据分析前景:
用python分析“数据分析”到底值不值得学习,以及学完之后大概能拿到多少工资
python基础自测题:
Python 800 道习题 (°ー°〃) 测试你学废了嘛
最后推荐一套Python视频给大家,希望对大家有所帮助:
全套教程!你和大佬只有一步之遥【python教程】
尾语
要成功,先发疯,下定决心往前冲!
学习是需要长期坚持的,一步一个脚印地走向未来!
未来的你一定会感谢今天学习的你。
—— 心灵鸡汤
本文章到这里就结束啦~感兴趣的小伙伴可以复制代码去试试哦 😝