点赞功能 社交平台的必备良药,谁谁谁什么时候给你点了个赞,点赞什么的貌似已经深入人心了。...之前在 @火喵酱 的博客页面有看到说想用 leancloud 实现 do you like me 的点赞功能,之前没接触 leancloud 的 SDK 不知道咋搞,后来就不了了之,然后因为最近做了 valine...的最新评论排行,所以借这个风顺便来做个点赞功能~ 点赞按钮 实践操作 和 valine 最新评论一样,首先需要引入 sdk 并初始化完成化后接入具体实现的代码即可(这个就不说了,上篇笔记里有写的) 实现思路...因为我要做的是页面点赞功能,所以可能会比 do you like me 那个稍稍多个步骤。...这里再聊下思路,一般做点赞功能都是在本地点击计数之后再把数据上传到云端服务器,访问页面的时候直接根据页面拉取对应的数据填充即可。
特此水一篇折腾记录-Typecho实现文章点赞,当时也懒得记录,现在觉得有必要记录一下。...,让点赞字段 +1 $db->query('UPDATE `' ....$cid . ';'); // 返回点赞数量 return ++$callback['agree']; } 然后找到post.php在顶部加入以下代码用于判断是否是点赞的 POST...>//点赞数量 最后Ajax点赞: 以下js代码添加至footer.php中, // 点赞按钮点击 $('#agree').on('click', function...var re = /\d/; // 匹配数字的正则表达式 // 匹配数字 if (re.test(data)) { // 把点赞按钮中的点赞数量设置为传回的点赞数量
php /** * 点赞 */ namespace app\like\service; use app\common\DataService; use app\common\Redis; class...const LIKE_USER_RECEIVE_SHOW_CHINESENAME = '我点赞了这条'; const BLOG_CHINESENAME = '资讯'; /**...* 点赞资讯 * @param int $userId 用户ID * @param int $blogId 资讯ID */ public function...($userId, $sys); Redis::getInstance()->redisZrem($key, $blogId); //我的点赞全部列表...":blog"); return true; } /** * 判断资讯是否被点赞 * @param int $userId 登录用户ID
数据一致性 点赞功能是目前app开发基本的功能 今天我们就来聊聊 点赞、评论、收藏等这些场景的db数据库设计问题, 1....我们先来看看场景的需求: 显示点赞数量 判断用户是否点过赞,用于去重,必须的判断 显示个人点赞列表,一般在用户中心 显示文章点赞列表 我们先看一下头条和微博的例子 ? ?...下面说下redis作为storage的方案: 场景a :显示点赞数量 在点赞的地方,只是显示一个点赞数量,能区分用户是否点赞过,一般用户不关心这个列表,这个场景只要一个数字就可以了,当数量比较大时,一般显示为...:tid:888 //实现数量自增 (integer) 899 场景b:点赞去重,避免重复点赞 要实现这个需求,必须有文章点赞的uid列表,以uid为key场景c:一般在用户中心,可以看到用户自己的点赞列表...uid列表 (integer) 3 127.0.0.1:6379[2]> sismember star:list:tid:888 456 //判断是否点赞 (integer) 1 点赞的地方,如果点赞过显示红色
"auto"; function 下滑(){ className("AbsListView").scrollable().scrollForward(); } function 赞(){ var like...= className("ImageView").desc("赞").find(); if(like){ like.click(); return true; } return false; } function...显示更多(){ for(let i = 0; i < 2;i++){ click("显示更多"); } } toast("请打开自己的资料页,点击点赞图标"); sleep(100); waitForActivity...com.tencent.mobileqq.activity.VisitorsActivity"); while(notStopped()){ var i = 0; while(i < 10){ i += 赞(
作者:一起web编程 www.toutiao.com/i6825148720728769028 点赞功能是目前app开发基本的功能 今天我们就来聊聊 点赞、评论、收藏等这些场景的db数据库设计问题, 1...我们先来看看场景的需求: 显示点赞数量 判断用户是否点过赞,用于去重,必须的判断 显示个人点赞列表,一般在用户中心 显示文章点赞列表 我们先看一下头条和微博的例子 ? ?...下面说下redis作为storage的方案: 场景a :显示点赞数量 在点赞的地方,只是显示一个点赞数量,能区分用户是否点赞过,一般用户不关心这个列表,这个场景只要一个数字就可以了,当数量比较大时,一般显示为...star:tid:888 //实现数量自增 (integer) 899 场景b:点赞去重,避免重复点赞 要实现这个需求,必须有文章点赞的uid列表,以uid为key场景c:一般在用户中心,可以看到用户自己的点赞列表...如果点赞过显示红色,没有则显示黑白色, 今日头条是没有地方可以看到点赞列表的,而微博点进去,详情页可以看到点赞列表,但是只会显示最近的几十条,没有分页显示。
点赞业务本身并不复杂,无非是对数据的update,但是点赞本身是无意识行为,并且同一个用户可对博文进行点赞/取消点赞,如果直接操作数据库,无疑会增加数据库io操作。...,1:点赞,2:取消点赞 public enum ThumbEnum { THUMB(1,"点赞"), CANCELTHUMB(2,"取消点赞"), private String...ThumbEnum(String messageName) { MessageName = messageName; } } 4.接口实现 根据是否存在key判断是点赞还是取消点赞...("isLike", 1);//1未点赞2已点赞 } else { //记录点赞用户 redisService.sadd(key, userIdStr...按理说读取与写操作应该分为两个redis,但是点赞统计的是评论数,大key进行拆分后,无需对其读写分离。
作者:一起web编程 链接:www.toutiao.com/i6825148720728769028 点赞功能是目前app开发基本的功能 今天我们就来聊聊 点赞、评论、收藏等这些场景的db数据库设计问题...我们先来看看场景的需求: 显示点赞数量 判断用户是否点过赞,用于去重,必须的判断 显示个人点赞列表,一般在用户中心 显示文章点赞列表 我们先看一下头条和微博的例子 [897b7172-a444-4a0e-a984...下面说下redis作为storage的方案: 场景a :显示点赞数量 在点赞的地方,只是显示一个点赞数量,能区分用户是否点赞过,一般用户不关心这个列表,这个场景只要一个数字就可以了,当数量比较大时,一般显示为...star:tid:888 //实现数量自增 (integer) 899 场景b:点赞去重,避免重复点赞 要实现这个需求,必须有文章点赞的uid列表,以uid为key场景c:一般在用户中心,可以看到用户自己的点赞列表...:tid:888 456 //判断是否点赞 (integer) 1 点赞的地方,如果点赞过显示红色,没有则显示黑白色, 今日头条是没有地方可以看到点赞列表的,而微博点进去,详情页可以看到点赞列表,但是只会显示最近的几十条
概述: 利用AccessibilityService机制实现了一个比较好玩儿的功能,微信朋友圈自动遍历点赞。即通过不断的滚动+点赞实现把每一条朋友圈都赞一次。...4.点赞程序的执行,则没什么难度了,代码都看得懂,这里就一带而过了。...(目前实现手动滚动全部点赞) * 上方固定显示的名字:com.tencent.mm:id/afa * 下方点赞:显示id:com.tencent.mm:id/cnn * 每发现一个【评论按钮】,就去搜索当前同父组件下的点赞区域有没有自己的...= 0) { //2.如果不为空,则查找有没有自己点过赞,有则不点,没有则点 AccessibilityNodeInfo zanbtn = zanBtns.get(0); LogUtils.d("点赞的人是...; //开始执行点赞流程 if (plBtns.size() !
点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...由于需要记录点赞人和被点赞人,还有点赞状态(点赞、取消点赞),还要固定时间间隔取出 Redis 中所有点赞数据,分析了下 Redis 数据格式中 Hash 最合适。...设点赞人的 id 为 likedPostId,被点赞人的 id 为 likedUserId ,点赞时状态为 1,取消点赞状态为 0。...id,点赞用户id,点赞状态。
由此功能实现打开页面,进行点赞。 aircv可以从大图像获得小图像的位置,利用pyautogui截屏得到的图片,可以在页面获取到每一个?的位置,进行点击。...当前页面点击完之后,通过pyautogui滚动鼠标的功能继续向下翻。从而实现循环。 2. 参考 pyautogui自动化控制鼠标和键盘操作 aircv 大图找小图 并识别小图中信息 3....os.remove('1.png') img1.save('1.png') #由于匹配相似度不同,为了减少错误,把纵坐标不在点赞的那一条的删除 pos=mousepos('1.png','test.png...2) if __name__ == '__main__': openpage(); for i in range(20): #根据自己的需要设置次数 begin() 总结 到此这篇关于python自动点赞功能的实现思路的文章就介绍到这了...,更多相关python 自动点赞内容请搜索ZaLou.Cn以前的文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!
前言 对于我们平时的一些社区应用,如微博,知乎,掘金等应用点赞,评论这类功能是不可或缺的,例如点赞功能我们其实是可以通过 mysql 去做实现的,但是每次点赞都去实时改库可以想象一下当遇到一个热点文章例如...字节的内容也就是2^32b; ❝2^(9(512)+10(1024)+10(1024)+3(8b=1B))=2^32b ❞ 应用场景: 用户签到 用户在线状态 统计活跃用户 各种状态值 自定义布隆过滤器 点赞功能...integer) 0 //查找 127.0.0.1:6379> getbit a 2 (integer) 1 //统计 127.0.0.1:6379> bitcount a (integer) 2 点赞功能...点赞功能 我这里的处理方式是异步改库,点完赞之后异步修改数据库,不要求实时处理结果其实可以用定时任务去批量改库(需要存一定时间内的 postId 和 userId 索引关系); @Override public...一个简单的位图实现点赞等功能就实现了,大家一个举一反三哈,玩法还是很多的,大家也可以根据自己的需求去做优化,希望可以对大家有帮助,有不对的地方希望大家可以提出来的,共同成长。 ❞
产品需求,实现类似微博的持续点赞再取消功能,因为自己也偶尔刷微博,对这功能有一定的使用上的了解, 至于微博点赞的具体实现我并不知道,微博点赞在断网的情况下依然能点赞,不会提示网络异常,等有网络之后...避免并发,减少CPU压力,我个人会想到 HandlerThread ,不懂可以自行科普,这里只说我实现的点赞功能原理. private Timer mTimer;//定时器 private TimerTask...,我这里第一个key是用户,第二个key是内容的唯一ID 把点赞消息存放在管理器和加入任务队列 public void addReport(String userId, long aId, int state...sendMsg(mThreadHandler, 0, userId, aId, state);//把任务加到子线程 } map.put(aId, state);//记录要提交的内容点赞状态...总结 以上所述是小编给大家介绍的Android 仿微博的点赞功能的实现原理(持续点赞再取消),希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。
点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...由于需要记录点赞人和被点赞人,还有点赞状态(点赞、取消点赞),还要固定时间间隔取出 Redis 中所有点赞数据,分析了下 Redis 数据格式中 Hash 最合适。...id,点赞用户id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。
使用技术 利用Ajax点赞 并 局部刷新页面 绑定事件 点赞和绑定 灵活处理 利用F 页面局部刷新 点赞数 反序列json获取布尔值 视图 布尔值,必须用Json...反序列化才能使用 F的妙用 点赞数自加1 def digg(request): # ajax 是json格式,特殊情况下需要反序列 import json from...user_id = request.user.pk # 过滤已经点赞或者踩了的 obj = models.ArticleUpDown.objects.filter(user_id...HTML Ajax局部刷新功能 {% extends 'base.html' %} {# 继承公共部分 #} {% block content %} {% csrf_token %} <...click(function () { var is_up = $(this).hasClass('diggit') {# ajax来操作点赞功能
点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...由于需要记录点赞人和被点赞人,还有点赞状态(点赞、取消点赞),还要固定时间间隔取出 Redis 中所有点赞数据,分析了下 Redis 数据格式中 Hash 最合适。...id,点赞用户id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。 如有更好的实现方案欢迎在评论区交流… 项目地址:https://github.com/cachecats/coderiver
点赞功能在很多系统中都有,但别看功能小,想要做好需要考虑的东西还挺多的。 点赞、取消点赞是高频次的操作,若每次都读写数据库,大量的操作会影响数据库性能,所以需要做缓存。...项目需求需要查看都谁点赞了,所以要存储每个点赞的点赞人、被点赞人,不能简单的做计数。...1.4 点赞数据在 Redis 中的存储格式 用 Redis 存储两种数据,一种是记录点赞人、被点赞人、点赞状态的数据,另一种是每个用户被点赞了多少次,做个简单的计数。...id,点赞用户id,点赞状态。...以上就是点赞功能的设计与实现,不足之处还请各位大佬多多指教。 后期继续分享会当下最流行的xxl-job,Elastic-Job
最近在学脚本开发,今天终于有小有所成,写了一个微信视频号自动点赞的功能,以下是代码实现,特此记录。...function goodClick(){ // 点赞的容器 let goodBox = id("com.tencent.mm:id/a2s").findOne(); //...点赞的图标 let goodIcon = goodBox.children().findOne(id("com.tencent.mm:id/f1x")); // 点击的范围 let...:id/fnp")); // 点赞前文字 let num1 = goodNum1.text() - 0; // 开始来点赞 obj.click(); sleep...// 点赞后文字 let num2 = goodNum2.text() - 0; // 如果取消赞 if(num1>num2){ // 补回点赞
前言 各路大佬用了各种方式实现了文章的点赞功能。 有的是博客系统自带的; 有的是评论系统集成的; 有的通过统计代码的 API 实现的; 有的通过第三方 SaaS 服务实现的。...为什么选择了这个点赞功能呢。 这是模仿的 GitHub 的点赞功能的,基本上 1:1 还原了。 GitHub 即正义! 步骤 1....前提: 需要有 Cloudflare 账号 电脑中需要有 Node.js 环境 首先去 Cloudflare 创建一个名为:emaction 的 D1 数据库 复制此数据库的 id,如:acf6da62...7777-4459-a579-123456789012" # 修改成自己的 [triggers] crons = [ ] 登录 Wrangler: wrangler login 在弹出的浏览器页面中,点...只是需要把自定义的 endpoint 传参给 JS 代码。 在 HTML 中引入 JS Module。
实现思路 通过 ajax 实时显示点赞数量,自定义字段保存赞数量,Cookies 禁止重新点赞。...click", ".favorite", function() { $(this).postLike(); }); 修改文章页面single.php,在你需要的位置添加一个点赞按钮...> 通过上面的三段代码就已经实现文章点赞功能,但是样式效果惨不忍睹,作者还提供了下面的样式,添加到主题style.css中(下方样式xiaoz未经测试) .post-like...但如果您网站启用了CDN,或使用了WP-Super-Cache这类静态缓存插件后,页面会被提前缓存起来,这样判断也就失效了,便可以无限点赞,于是xiaoz进行了改进,通过js再判断一次COOKIES是否存在...; } else{ $(this).postLike(); } }); 总结 最后实现的功能类似小z博客文章下方的点赞效果,这里主要提供思路和代码实现
领取专属 10元无门槛券
手把手带您无忧上云