基于Python的简易评论区抽奖

这篇具有很好参考价值的文章主要介绍了基于Python的简易评论区抽奖。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

博主 空空star
主页 空空star的主页

大家好,我是空空star,本篇给大家分享一下《基于Python的简易评论区抽奖》

引入模块

import random
import requests

获取博客评论

size设置为1000应该够了,不够的话依据实际情况调整。

def comment_list(username,article_id):
    url = f'https://blog.csdn.net/phoenix/web/v1/comment/list/{article_id}?page=1&size=1000'
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763',
        'Cookie': f'UserName={username}'
    }
    res = requests.get(url, headers=headers)
    comments = res.json()['data']['list']
    comment_dicts = []
    for comment in comments:
        if comment['info']['parentId'] == 0:
            content = comment['info']['content']
            userName = comment['info']['userName']
            nickName = comment['info']['nickName']
            comment_dict = {
                'userName': userName,
                'nickName': nickName,
                'content': content
            }
            comment_dicts.append(comment_dict)
    return comment_dicts

抽取用户

需要考虑几个点:

  • 排除作者自己
  • 有无按照要求评论
  • 抽取到的用户重复
  • 待抽取的用户个数不足要求的个数(当然一般情况下3、5个都是够的)
def select_users(username,base_content,comment_ds,num):
    users = []
    if base_content is None:
        for item in comment_ds:
            users.append(item['userName'])
    else:
        for item in comment_ds:
            # 筛选出按照要求评论的用户
            if item['content'] == base_content:
                users.append(item['userName'])
    # 移除作者自己
    if username in users:
        users.remove(username)
    if num > len(set(users)):
        print('待抽取用户个数不足抽取的个数!')
    else:
        selected_users = random.sample(users, num)
        if len(selected_users) != len(set(selected_users)):
            print('存在重复用户,请重新抽取!')
        else:
            print(f'中奖用户:{selected_users}')

程序入口

这里就用陈老老老板的这篇博客做个演示:

if __name__ == '__main__':
    # 你的username
    username = 'weixin_47343544'
    # 参与抽奖活动的博客id
    article_id = 131788124
    # 你要求的评论内容
    base_content = '学java就找陈老老老板'
    # base_content = None
    # 抽取人数
    num = 3
    comment_ds = comment_list(username, article_id)
    select_users(username, base_content, comment_ds, num)

效果

哈哈,竟然抽到了自己。

中奖用户:[‘m0_64280701’, ‘H1727548’, ‘weixin_38093452’]
Process finished with exit code 0

总结

最后

如果您不知道如何支持我,
InsCode AI列了一些支持博主的句子供您参考:

博主写的文章很有深度,收获了很多知识。
博主的写作风格幽默风趣。
博主勇于分享自己的经验和教训,让初学者从中受益匪浅。
博主的思想独到,文章读起来让人格外振奋。
博主为人很好,乐于助人,回复读者的问题也非常及时。
博主的专业知识非常全面,无论是哪个领域的问题都能给出详细的解答。文章来源地址https://www.toymoban.com/news/detail-599734.html

到了这里,关于基于Python的简易评论区抽奖的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于Python编写一个B站全自动抽奖的小程序

    本文将利用Python编写一个B站全自动抽奖的小程序,可以实时监控自己关注的UP主,如果关注的UP主中有人发布了抽奖的动态,就自动参与这个抽奖。这样就能不错过任何一个可以暴富的机会了。需要的可以参考一下 应好友邀请,帮他写了个小程序,功能类似于实时监控自己关

    2024年01月24日
    浏览(53)
  • 基于python开发端口扫描工具

    本人仍然还在学习阶段,有问题欢迎大佬指正,希望我的文章能够帮助到你.以后我很多东西都会在博客更新,和大家一起进步,加油. 本次博客主要是开发一个端口扫描工具,用python语言,要求要能指定ip,指定c段,指定端口号和端口范围,还有多线程或者线程池实现,提高端口扫描效率

    2024年02月04日
    浏览(39)
  • 用好Python自然语言工具包-- 实例“基于本地知识库的自动问答”

    首先鸣谢thomas-yanxin 本问中示例来自他在GitHub上的开源项目“基于本地知识库的自动问答”,链接如下: thomas-yanxin/LangChain-ChatGLM-Webui: 基于LangChain和ChatGLM-6B的针对本地知识库的自动问答 (github.com) 目录 1. 基础知识: 2. NLTK库的使用 3. 实例代码分析 设备的定义 函数定义:从网

    2024年02月05日
    浏览(68)
  • ApeWorX: 新的基于 Python 语言的智能合约开发框架

    Brownie 是 Python 开发人员经常使用智能合约框架。 现在出现了一个 Brownie 的继任者,可以让 Python Web3 开发人员获得更好的体验。 在本文中,我将讨论这个 Brownie 的继任者 ApeWorX,也称为“Ape”。 ApeWorX 是一个基于 Python 的智能合约开发和部署框架,有很强的可定制性和安全的

    2024年02月05日
    浏览(43)
  • 你评论,我赠书~【哈士奇赠书 - 13期】-〖Python程序设计-编程基础、Web开发及数据分析〗参与评论,即可有机获得

    大家好,我是 哈士奇 ,一位工作了十年的\\\"技术混子\\\", 致力于为开发者赋能的UP主, 目前正在运营着 TFS_CLUB社区。 💬 人生格言:优于别人,并不高贵,真正的高贵应该是优于过去的自己。💬 📫 如果文章知识点有错误的地方,请指正!和大家一起学习,一起进步👀 🔥 如果感

    2024年02月04日
    浏览(57)
  • 计算机竞赛 基于GRU的 电影评论情感分析 - python 深度学习 情感分类

    🔥 优质竞赛项目系列,今天要分享的是 基于GRU的 电影评论情感分析 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! 🧿 更多资料, 项目分享: https://gitee.com/dancheng-senior/postgraduate 其实,很明显这个项目和微博谣言检测是一样的,也是个二分类的问题,因此,我们

    2024年02月11日
    浏览(49)
  • 构建Python随机密码生成器:保障账户安全的简易工具

    💂 个人网站:【 海拥】【神级代码资源网站】【办公神器】 🤟 基于Web端打造的:👉轻量化工具创作平台 💅 想寻找共同学习交流的小伙伴,请点击【全栈技术交流群】 密码安全是当前数字时代的一个重要议题。在保护个人信息和账户安全方面,安全且可靠的密码是至关重

    2024年02月03日
    浏览(51)
  • 基于Python语言Django+Layui实现的低代码开发平台

    一款 Python 语言基于Django、Layui、MySQL等框架精心打造的一款模块化、高性能、企业级的敏捷开发框架,本着简化开发、提升开发效率的初衷触发,框架自研了一套个性化的组件,实现了可插拔的组件式开发方式:单图上传、多图上传、下拉选择、开关按钮、单选按钮、多选按

    2024年02月11日
    浏览(88)
  • 用python语言爬虫爬取微博评论--上--初步爬虫(超详细版,大学生不骗大学生)

    目录 一、找到页面  二、学会使用检查元素 2.1 打开检查元素界面 2.2 找到所有评论所在的位置 2.2.1 搜索评论 2.2.2  找到data表 三、基础部分代码实现 ​​​​​​​ 全部已经更完(下面两个链接是中和下) https://blog.csdn.net/m0_68325382/article/details/137234661?spm=1001.2014.3001.5502 爬

    2024年04月10日
    浏览(52)
  • 基于python tornado实现的简易图床

    项目地址 因为买了阿里/腾讯的云服务器,但是使用云存储还需要收费,又加上家里正好有一台 nas ,又加上闲的没事,所以搞了一个小脚本 这个项目主要功能是为 typora 增加一个自定义图床 欢迎提出issues和pr,如果闲的没事会考虑增加一个web界面来上传图片 环境为:python3

    2024年02月14日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包