如何使用Python实现自动化水军评论


Posted in Python onJune 26, 2019

前言

玩博客一个多月了,渐渐发现了一些有意思的事,经常会有人用同样的评论到处刷,不知道是为了加没什么用的积分,还是纯粹为了表达楼主好人。那么问题来了,这种无聊的事情当然最好能够自动化咯,自己也来试了一把,纯属娱乐。

登陆

要评论当然要能够先进行登陆,采用 库进行处理,尝试能否看到自己的消息列表:

结果跳转到登陆界面,好的那看一下登陆界面是怎么登陆的,找到表单:

发现还有一些隐藏的参数,如lt、excution等,好心的程序猿还写明了不能为什么不能直接认证的原因:缺少流水号,那就多访问一次来获取流水号好了,用 来分析页面内容抓取流水号,同时因为要跨不同的域来进行操作,所以引入session:

如何使用Python实现自动化水军评论

好了,现在能够得到我的消息信息了,说明已经成功解决登陆问题,那么自动化水军评论应该就近在眼前了。

自动评论

这次学乖了,随便找了篇文章直接查看评论框form:

如何使用Python实现自动化水军评论

在上面登陆代码的基础上进行评论的提交:

如何使用Python实现自动化水军评论

结果返回了 {"result":0,"content":"评论内容没有填写!","callback":null,"data":null} 这样的结果。有点意思,应该是在js中对参数进行了处理。那就把js拉出来看看,网页里搜了一下js文件,有个 ,就是它了。在上面的form中可以看到提交时调用了subform方法,查看方法如下:

如何使用Python实现自动化水军评论

可以清楚的看到最后POST提交的数据 data 改变了参数的名字,还有几个其他的参数通过看js文件可以看到不是空的就是定死的,就不用管他了。同时发现上的 "comment_usrId" 也是给死的?那就只要comment一个变量就搞定了。

如何使用Python实现自动化水军评论

看一下效果:

如何使用Python实现自动化水军评论

自动化

当然上面最终的参数传递也可以自己手动评论并用抓包软件抓取,不过通过查看 commetn.js 文件也给我的自动化评论提供了方向,其中有一个 load_comment_form() 方法,是用来加载comment-form的,它给出了action的定义:

action="/' + username + '/comment/submit?id=' + fileName + '"

写的很明白了,我只要抓取到页面的作者名和文章的编号就可以尽情的水评论了,随便选个抓取文章的入口,如最新博客入口 ,用BeautifulSoup抓取url并解析取到其中的username和filename来构成action并提价评论。

运行脚本试一下效果:

如何使用Python实现自动化水军评论

打开评论管理看一下:

如何使用Python实现自动化水军评论

自动化评论成功。

写在最后

写这篇文章只是为了证明一下自己的想法,不是用来也不希望有人用来恶意刷评论。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的组合模式与责任链模式编程示例
Feb 02 Python
Python3.7实现中控考勤机自动连接
Aug 28 Python
python实现微信定时每天和女友发送消息
Apr 29 Python
django的csrf实现过程详解
Jul 26 Python
django haystack实现全文检索的示例代码
Jun 24 Python
python 安装移动复制第三方库操作
Jul 13 Python
python如何变换环境
Jul 21 Python
Python抓包并解析json爬虫的完整实例代码
Nov 03 Python
pandas 实现将NaN转换为None
May 14 Python
Jupyter notebook 更改文件打开的默认路径操作
May 21 Python
Python中文分词库jieba(结巴分词)详细使用介绍
Apr 07 Python
python模板入门教程之flask Jinja
Apr 11 Python
详解用pyecharts Geo实现动态数据热力图城市找不到问题解决
Jun 26 #Python
Python 数据可视化pyecharts的使用详解
Jun 26 #Python
python 实现交换两个列表元素的位置示例
Jun 26 #Python
python之信息加密题目详解
Jun 26 #Python
实例详解Python模块decimal
Jun 26 #Python
Python3之不使用第三方变量,实现交换两个变量的值
Jun 26 #Python
python 猴子补丁(monkey patch)
Jun 26 #Python
You might like
DOTA2游戏同人动画《龙之血》导演接受采访
2021/03/05 欧美动漫
浅谈PHP强制类型转换,慎用!
2013/06/06 PHP
php定义一个参数带有默认值的函数实例分析
2015/03/16 PHP
php使用MySQL保存session会话的方法
2015/06/18 PHP
php判断电子邮件是否正确方法
2018/12/04 PHP
laravel实现简单用户权限的示例代码
2019/05/28 PHP
使用jQuery向asp.net Mvc传递复杂json数据-ModelBinder篇
2010/05/07 Javascript
《JavaScript高级程序设计》阅读笔记(一) ECMAScript基础
2012/02/27 Javascript
通过Javascript将数据导出到外部Excel文档的函数代码
2012/06/15 Javascript
javascript判断是手机还是电脑访问网页的简单实例分享
2014/06/03 Javascript
JS简单实现多级Select联动菜单效果代码
2015/09/06 Javascript
JS中dom0级事件和dom2级事件的区别介绍
2016/05/05 Javascript
js阻止浏览器默认行为的简单实例
2016/05/15 Javascript
AngularJS实现表单验证功能
2017/01/09 Javascript
js实现日历的简单算法
2017/01/24 Javascript
使用jQuery的load方法设计动态加载及解决被加载页面js失效问题
2017/03/01 Javascript
Node.js中看JavaScript的引用
2017/04/22 Javascript
AngularJS中的路由使用及实现代码
2017/10/09 Javascript
Vue+ElementUI实现表单动态渲染、可视化配置的方法
2018/03/07 Javascript
vue router导航守卫(router.beforeEach())的使用详解
2019/04/19 Javascript
vue限制输入框只能输入8位整数和2位小数的代码
2019/11/06 Javascript
Python THREADING模块中的JOIN()方法深入理解
2015/02/18 Python
Python 关于反射和类的特殊成员方法
2017/09/14 Python
Django之Mode的外键自关联和引用未定义的Model方法
2018/12/15 Python
django组合搜索实现过程详解(附代码)
2019/08/06 Python
基于Python脚本实现邮件报警功能
2020/05/20 Python
Python中有几个关键字
2020/06/04 Python
css3 给背景设置渐变色的方法
2019/09/12 HTML / CSS
阿迪达斯芬兰官方网站:adidas芬兰
2017/01/30 全球购物
美国婚礼装饰和活动用品批发供应商:Event Decor Direct
2018/10/12 全球购物
什么是静态路由?什么是动态路由?各自的特点是什么?
2015/09/16 面试题
大一新生军训时的自我评价分享
2013/12/05 职场文书
个人合伙协议书范本
2014/10/14 职场文书
土地租赁协议书
2015/01/29 职场文书
白鹤梁导游词
2015/02/06 职场文书
Java8利用Stream对列表进行去除重复的方法详解
2022/04/14 Java/Android