第一次在 V2EX 做抽奖活动 送 giffgaff ,遇到很多问题,好在顺利结束。TG 群 eSIM Card 交流群 的 July 讲 V2EX 是有 API 的,于是心血来潮把抽奖的过程整理成 python 脚本。
权且就叫它 V2EX 抽奖小程序(大家不要见笑),希望能起到抛转引玉的效果,希望能帮助到有需要的人。
目前实现了以下主要功能:
欢迎提出自己的想法,欢迎适配,欢迎参与改进
Created | Floor | UserName | Main page | Reply | Avatar |
---|---|---|---|---|---|
2025-01-09 14:13:26 | 234 楼 | @C0dEr | C0dEr | 参与一下 | |
2025-01-13 14:32:18 | 354 楼 | @HaoBaiCai | HaoBaiCai | 参加一下 |
> python .\v2ex_lottery.py init
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Requirement already satisfied: pysocks in f:\documents\vscode\giffgaff\.conda\lib\site-packages (1.7.1)
Requirement already satisfied: requests[socks] in f:\documents\vscode\giffgaff\.conda\lib\site-packages (2.32.3)
Requirement already satisfied: charset-normalizer<4,>=2 in f:\documents\vscode\giffgaff\.conda\lib\site-packages (from requests[socks]) (3.4.1)
Requirement already satisfied: idna<4,>=2.5 in f:\documents\vscode\giffgaff\.conda\lib\site-packages (from requests[socks]) (3.10)
Requirement already satisfied: urllib3<3,>=1.21.1 in f:\documents\vscode\giffgaff\.conda\lib\site-packages (from requests[socks]) (2.3.0)
Requirement already satisfied: certifi>=2017.4.17 in f:\documents\vscode\giffgaff\.conda\lib\site-packages (from requests[socks]) (2024.12.14)
初始化配置中...
请输入您的 Bearer Token (请参考 https://www.v2ex.com/help/personal-access-token 访问 https://www.v2ex.com/settings/tokens 生成,安全起见输入后不会显示):
请输入代理地址 (如 socks5h://127.0.0.1:1080 ,留空表示不使用代理): socks5h://127.0.0.1:1080
配置完成!
> python.exe .\v2ex_lottery.py
使用的 Token: 9--------------4
使用的代理: socks5h://127.0.0.1:1080
请输入主题 URL: https://v2ex.com/t/1103737
主题: T 楼 1.99 元 30 张英国 giffgaff ,TG 群抽奖同步送 30 张,总计 60 张,为 giffgaff 中国的普及做贡献
楼层总数: 357
请输入抽奖楼层数 (默认 357):
请输入中奖人数 (默认 1): 2
https://www.v2ex.com/api/v2/topics/1103737/replies?p=12
https://www.v2ex.com/api/v2/topics/1103737/replies?p=18
抽奖结果( 2025-01-18 21:12:47 ):
2025-01-09 14:13:26 第 234 楼: @C0dEr
2025-01-13 14:32:18 第 354 楼: @HaoBaiCai
Markdown 抽奖结果( 2025-01-18 21:12:47 ):
| Created | Floor | UserName | Main page | Reply | Avatar |
|----------|------|--------|----------|----------|------|
| 2025-01-09 14:13:26 | 234 楼 | @C0dEr | [C0dEr]( https://www.v2ex.com/member/C0dEr) | [参与一下]( https://v2ex.com/t/1103737#r_15775882) | <img src="https://cdn.v2ex.com/avatar/65f9/a4fe/160006_xxlarge.png?m=1715389329" width="48px" height="48px"> |
| 2025-01-13 14:32:18 | 354 楼 | @HaoBaiCai | [HaoBaiCai]( https://www.v2ex.com/member/HaoBaiCai) | [参加一下]( https://v2ex.com/t/1103737#r_15789345) | <img src="https://cdn.v2ex.com/avatar/a8bb/5fe6/589184_xxxlarge.png?m=1721140523" width="48px" height="48px"> |
已支持把体彩排列5作为随机数种子 ,感谢 @loading 的建议。
目前体彩排列5开奖后,人人都可以按照 T 楼规则验证自己是否中奖了。
具体代码请查阅:v2ex-lottery
> python .\v2ex_lottery.py
使用的 Token: 9--------------4
使用的代理: socks5h://127.0.0.1:1080
请输入主题 URL: https://www.v2ex.com/t/1103737
主题: T 楼 1.99 元 30 张英国 giffgaff, TG 群抽奖同步送 30 张,总计 60 张,为 giffgaff 中国的普及做贡献
楼层总数: 357
请输入抽奖楼层数 (默认 357):
请输入中奖人数 (默认 1): 3
是否使用最近一期的排列五(每天 21:25 开奖)开奖结果作为随机数种子?(Yes/No/指定日期,如 20250101): 20250101
2025-01-01 21:25:00 的开奖结果为:12336
https://www.v2ex.com/api/v2/topics/1103737/replies?p=5
https://www.v2ex.com/api/v2/topics/1103737/replies?p=12
https://www.v2ex.com/api/v2/topics/1103737/replies?p=13
抽奖结果(2025-01-21 06:30:46):
2025-01-09 09:57:40 第 095 楼: @buxushow
2025-01-09 14:11:01 第 232 楼: @yl14786922106
2025-01-09 14:45:40 第 243 楼: @megamilk
如何验证抽奖结果(需要有python环境):
1 访问 https://github.com/360card/v2ex-lottery 下载 v2ex-lottery
2 执行命令:python v2ex-lottery.py init 初始化配置
3 执行命令:python v2ex-lottery.py 输入相同参数,重复执行抽奖程序
1
WuDiHaiTai 4 天前
nb
|
2
bfhyqy OP @WuDiHaiTai 见笑了
|
3
loading 4 天前
我之前一个送键盘 PCB 的活动是群文件等级自己序号,然后规则是某日特斯拉收市价格(含小数点后面几位),然后参与人数取余数+1 ,这样能公平公开公正。
什么代码的,我都觉得有造假嫌疑(因为我能) |
4
bfhyqy OP @loading 你的建议也不错,我觉得执行的时候可以加个某日收盘价之类/双色球结果的种子。
只是如果要消除造假嫌疑,这个要么规则足够简单人人都懂,要么过程足够透明,全称监控。这两者都是挑战。 比如,就比如双色球,仍然有很多人质疑。 |
6
iSkylar 3 天前
🐂🍺 这个好
|
7
HaoBaiCai 2 天前
我丢,我还以为我中了,哈哈哈😂
|
11
LHRUN 1 天前
收藏了,后面说不定要用到 😂
|