b站python评论抽奖_B站动态转发抽奖脚本+教程

该博客介绍了如何使用Python脚本进行B站动态转发抽奖,包括环境配置、脚本编写、数据获取和中奖用户抽取。用户需输入动态ID,脚本将从B站API获取转发数据并存储到SQLite数据库,最后随机选取幸运用户。注意,由于B站API限制,大量转发数据可能无法获取。
摘要由CSDN通过智能技术生成

温馨提示:因为b站API并没有提供所有人员数据,所以多人数情况并不适用!!!

实测4w转,实际500左右的数据!!!

## 运行python脚本需要的条件: 1、连通的网络 2、已安装Python2并配置环境变量 3、Python脚本源码

环境搭建:

网络就不用我说了(〃'▽'〃) 那么下面我们来安装python吧。 Python官网有2个版本2和3,我们选择2,因为语法等方面会有所不同。 Python2下载:https://www.python.org/downloads/windows/

环境变量配置方法:

“计算机”右键-> “属性”->“高级系统设置”->“环境变量”-> 系统变量中找到“Path”->“编辑”->“新建”-> 将你python安装的路径粘贴进去-> 全部“确认”。

测试python是否配置完成。 按Win+R 键,输入“cmd”,“确认”。

成功运行python命令即表示成功。

编写脚本:

桌面右键 -> “新建”-> “文本文档” -> 取名为 “抽奖.py”(不要隐藏文件扩展名) 修改正确后的图标是

,而不是

补充 取消隐藏文件扩展名的方法(win10):

1、打开 “计算机” 2、点击这个箭头

3、选择 “查看”

4、勾上 “文件扩展名”

5、回到“桌面”,再次修改文件名。

中文版源码:

#!/usr/bin/env python

# -*- encoding: utf-8 -*-

"""Bilibili动态转发抽奖脚本 V1.1Auteur:Poc Sir Bilibili:鸟云厂商Mon site Internet:https://www.hackinn.comWeibo:Poc-Sir Twitter:@rtcatc更新内容: 1.增加了对画册类型动态的支持。"""

import os

import urllib2

import json

import sqlite3

import random

import webbrowser

import re

import time

from urlparse import *

def GetMiddleStr(content,startStr,endStr):

startIndex = content.index(startStr)

if startIndex>=0:

startIndex += len(startStr)

endIndex = content.index(endStr)

return content[startIndex:endIndex]

def GetUsers():

global Bilibili_Key

GetTotalRepost()

Tmp_count = 0

Bilibili_Key = 0

DynamicAPI = "https://api.live.bilibili.com/dynamic_repost/v1/dynamic_repost/view_repost?dynamic_id="+ Dynamic_id + "&offset="

conn = sqlite3.connect('Bilibili_TMP.db')

c = conn.cursor()

while Tmp_count

Tmp_DynamicAPI = DynamicAPI + str(Tmp_count)

try:

BiliJson = json.loads(GetMiddleStr(urllib2.urlopen(Tmp_DynamicAPI).read(),"comments\":",",\"total"))

for BiliJson_dict in BiliJson:

Bilibili_UID = str(BiliJson_dict['uid'])

Bilibili_Uname = BiliJson_dict['uname']

Bilibili_Comment = BiliJson_dict['comment']

Bilibili_Sql = "INSERT or REPLACE into Bilibili (UID,Uname,Comment,ID) VALUES (" + Bilibili_UID + ", '" + Bilibili_Uname + "', '" + Bilibili_Comment + "', " + str(Bilibili_Key) + ")"

c.execute(Bilibili_Sql)

conn.commit()

Bilibili_Key = Bilibili_Key + 1

except:

break

Tmp_count = Tmp_count + 20

else:

Tmp_count = 0

conn.close()

def GetTotalRepost():

global Total_count

global UP_UID

DynamicAPI &#

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值