bilibili怎么用用户名登录_[Python100行系列]-用selenium表白所有的B站粉丝

4cd459a4bb40b76abb320c4d05005b8e.png
反正最近在学selenium,B站也在尝试做视频,那就试试用selenuim来B站做点有趣的视频呗,说干就干!

Hzy的博客

完整代码

1.安装firefox驱动及selenium

1.1 安装 selenium

pip install selenium

1.2 安装firefox浏览器

百度搜索下载Firefox最新版安装即可

1.3 安装firefox驱动

官网下载: https:// github.com/mozilla/geck odriver/releases
安装完放到浏览器的目录下即可

2.开始打代码

2.1打开b站

browser = webdriver.Firefox()
browser.get("https://www.bilibili.com/")
time.sleep(2)

2.2 移动到登录按钮,然后点击,跳转到登录界面

login = browser.find_element_by_class_name("name") ActionChains(browser).move_to_element(login).click().perform()

2.3 扫码登录

login = browser.find_element_by_class_name("name")
ActionChains(browser).move_to_element(login).click().perform()
window = browser.window_handles
browser.switch_to.window(window[-1])
print("等待登录")
login_page_url = "https://passport.bilibili.com/login"
while True:
    time.sleep(2)
    if browser.current_url != login_page_url:
        break
哔哩哔哩app扫码登录即可

2.4 跳转到粉丝界面

# 直接跳转到粉丝界面
browser.get("https://space.bilibili.com/32912435/fans/fans")
all_fans_name = WebDriverWait(browser,10).until(lambda browser:browser.find_elements_by_xpath(
    "//li[@class='list-item clearfix']/div[@class='content']//a[@class='title']"))
names = [name.text for name in all_fans_name]
# 获取所有的消息链接
all_links_ele = WebDriverWait(browser,10).until(lambda browser:browser.find_elements_by_xpath("//li[@class='be-dropdown-item']/a"))
all_fans_links = [link.get_attribute('href') for link in all_links_ele]
获取所有的粉丝昵称和消息的mid

2.5 循环发送指定消息

for i in range(len(all_fans_links)):
    print("{}:昵称:{}".format(i+1,names[i]))
    browser.get(all_fans_links[i])
    browser.refresh()
    text_area = WebDriverWait(browser, 10000).until(lambda browser: browser.find_element_by_css_selector(
        "div.router-view div.card.whisper div.dialog div.send-box div.input-box textarea.textarea"))
    text_area.send_keys("你好哇,小可爱")

3. 最后运行就可以看到效果啦。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值