基于selenium的python模拟登陆虎牙发送弹幕并截取主播头像

前提:

  • 需要下载谷歌浏览器驱动,版本需要一致,这个很重要,下载地址如下:

http://chromedriver.storage.googleapis.com/index.html 

import time
import random
from PIL import Image
from selenium import webdriver

driver = webdriver.Chrome("../../chromedriver.exe")#指定谷歌驱动目录
#请求网页
driver.get('https://www.huya.com/417964')#52503,863214,417964
time.sleep(10)

# 打印当前渲染过的网页内容
page = driver.page_source
print(page)
  • 接下来是使用账号登录:
  • 第一种直接程序登录:
# 直接获取登录
driver.find_element_by_id("nav-login").click()
#由于登录按钮是在iframe上,所以把定位器切换到iframe上
driver.switch_to_frame("UDBSdkLgn_iframe")
driver.find_element_by_xpath('//div[@class="udb-input-item"]//input[@placeholder="手机号/虎牙号"]').send_keys('**********')
driver.find_element_by_xpath('//div[@class="udb-input-item"]//input[@placeholder="密码"]').send_keys('**********')
driver.find_element_by_id("login-btn").click()
#返回到主页面
driver.switch_to_default_content()
  • 第二种手动登录:
# 预留登陆时间60秒
driver.find_element_by_id("nav-login").click()
time.sleep(60)

死循环发送弹幕:

 

#死循环发送弹幕
while 1:
    # 输出发送弹幕内容
    input_text = driver.find_element_by_id('pub_msg_input')
    test_arr = ['!!!!!','哈哈哈哈哈哈哈','牛P','我裂开了呀','不要怂,一起上']
    random_index = random.randint(0,len(test_arr)-1)
    input_text.send_keys(test_arr[random_index])
    time.sleep(3)
    send_btn = driver.find_element_by_id('msg_send_bt')
    send_btn.click()
    time.sleep(7)


# 关闭浏览器
driver.close()

截取屏幕图片,并对图片进行裁剪以获取主播头像: 

# 全屏,以显示出主播头像
driver.maximize_window()

# Driver获取截屏
driver.get_screenshot_as_file('****.png')

#裁剪图片
img = Image.open('****.png')
img.size #(1920, 889)
#img.show()

img_cut = img.crop([1100,550,1400,720])#定义截取的位置

                            

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值