Python实现的爬虫刷回复功能示例


Posted in Python onJune 07, 2018

本文实例讲述了Python实现的爬虫刷回复功能。分享给大家供大家参考,具体如下:

最近闲的无聊,就想着去看看爬虫,顺着爬虫顺利的做到了模拟登录、刷帖子等等,这里简要说一下。

使用Python2.7写的爬虫,对某论坛做模拟登陆和刷帖子、回复等等,由于之前是没有接触过爬虫,这次之后感觉爬虫很强大,能做很多事,先来贴几张图。

Python实现的爬虫刷回复功能示例

由于论坛不让使用相同的文字,所以调用了笑话的api,达到不同文字的目的。

该论坛使用的是cookie,所以先去获取一下cookie,顺便将cookie写到文件里面。

'''
获取cookie
'''
def get_cookie(login_data, url, testurl=None):
  filename = "cookie"
  cookie = cookielib.MozillaCookieJar(filename)
  hadler = urllib2.HTTPCookieProcessor(cookie)
  opener = urllib2.build_opener(hadler)
  post_data = urllib.urlencode(
    {'logname': 123456, "logpass": "123456", "action": "login", })
  url = 'http://*****.me/waplogin.aspx'
  opener.open(url, post_data)
  cookie.save(ignore_discard=True, ignore_expires=True)
  print("获取成功")
  # print(opener.open(testurl).read())

先要分析该网站登录地址,登录需要的参数,如上代码

获得cookie之后,分析该论坛的回复参数,该论坛采用的是post提交,需要有帖子id,回复内容等等,分析之后得到如下代码

代码先加载文件里面的cookie,然后调用了haha这个笑话api,当然我已经将这个api的json进行了处理,这里只要笑话内容就行。

'''
回复帖子
'''
def post_reply():
  filename = "cookie"
  cookie = cookielib.MozillaCookieJar(filename)
  cookie.load(filename, ignore_discard=True, ignore_expires=True)
  handler = urllib2.HTTPCookieProcessor(cookie)
  opener = urllib2.build_opener(handler)
  num=0
  for i in range(216255, 800000):
    num = num + 1
    huifu = urllib.urlencode(
      {'sendmsg': 0, "content": str(haha(num)), "action": "add", "id": str(i), "classid": 177})
    gradeUrl = 'http://******.me/bbs/book_re.aspx'
    result = opener.open(gradeUrl)
    print result.read()
    print "当前第" + str(num) + "" + "次回帖"
    print("当前帖子id" + str(i))
    sleep(1)

发帖子代码:

'''
发帖子(普通帖子或者加悬赏分的帖子:并不是悬赏板块的帖子)
'''
def post_articles(book_title, book_content, classid=177, sendmoney=0):
  filename = "cookie"
  cookie = cookielib.MozillaCookieJar(filename)
  cookie.load(filename, ignore_discard=True, ignore_expires=True)
  handler = urllib2.HTTPCookieProcessor(cookie)
  opener = urllib2.build_opener(handler)
  post_articles = urllib.urlencode(
    {'sendmsg': 0, "book_title": str(book_title), "action": "gomod", "siteid": "1000",
     "book_content": str(book_content), "classid": classid, "sendmoney": sendmoney})
  gradeUrl = 'http://*****.me/bbs/book_view_add.aspx'
  result = opener.open(gradeUrl, post_articles)
  print(result.read())

将这些代码进行进行调用就可以去刷回复了。

Python实现的爬虫刷回复功能示例

更多关于Python相关内容可查看本站专题:《Python Socket编程技巧总结》、《Python正则表达式用法总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python调用cmd复制文件代码分享
Dec 27 Python
python使用rsa加密算法模块模拟新浪微博登录
Jan 22 Python
python开发之thread线程基础实例入门
Nov 11 Python
浅析Python的web.py框架中url的设定方法
Jul 11 Python
关于Python正则表达式 findall函数问题详解
Mar 22 Python
Python实现简单求解给定整数的质因数算法示例
Mar 25 Python
Django项目中用JS实现加载子页面并传值的方法
May 28 Python
python 3.6.2 安装配置方法图文教程
Sep 18 Python
Anaconda 查看、创建、管理和使用python环境的方法
Dec 03 Python
Python3 hashlib密码散列算法原理详解
Mar 30 Python
Python基于template实现字符串替换
Nov 27 Python
解决virtualenv -p python3 venv报错的问题
Feb 05 Python
异步任务队列Celery在Django中的使用方法
Jun 07 #Python
浅谈python中对于json写入txt文件的编码问题
Jun 07 #Python
Python查看微信撤回消息代码
Jun 07 #Python
spark: RDD与DataFrame之间的相互转换方法
Jun 07 #Python
Python简单实现网页内容抓取功能示例
Jun 07 #Python
pyspark 读取csv文件创建DataFrame的两种方法
Jun 07 #Python
redis之django-redis的简单缓存使用
Jun 07 #Python
You might like
php.ini中文版
2006/10/09 PHP
PHP 修复未正常关闭的HTML标签实现代码(支持嵌套和就近闭合)
2012/06/07 PHP
PHP中使用imagick实现把PDF转成图片
2015/01/26 PHP
php实现的网络相册图片防盗链完美破解方法
2015/07/01 PHP
PHP创建PowerPoint2007文档的方法
2015/12/10 PHP
利用switch语句进行多选一判断的实例代码
2016/11/14 PHP
Yii框架实现的验证码、登录及退出功能示例
2017/05/20 PHP
jQuery 处理网页内容的实现代码
2010/02/15 Javascript
jquery miniui 教程 表格控件 合并单元格应用
2012/11/25 Javascript
Javscript删除数组中指定元素并返回新数组
2014/03/06 Javascript
Javascript中实现trim()函数的两种方法
2015/02/04 Javascript
JavaScript几种数组去掉重复值的方法推荐
2016/04/12 Javascript
AngularJS 中的Promise --- $q服务详解
2016/09/14 Javascript
原生JS查找元素的方法(推荐)
2016/11/22 Javascript
原生JS实现图片轮播效果
2016/12/26 Javascript
JavaScript字符集编码与解码详谈
2017/02/02 Javascript
从零学习node.js之mysql数据库的操作(五)
2017/02/24 Javascript
JS 中使用Promise 实现红绿灯实例代码(demo)
2017/10/20 Javascript
详解React Native 屏幕适配(炒鸡简单的方法)
2018/06/11 Javascript
详解@angular/cli 改变默认启动端口两种方式
2018/11/29 Javascript
python判断字符串是否是json格式方法分享
2017/11/07 Python
python 将数据保存为excel的xls格式(实例讲解)
2018/05/03 Python
python实现最长公共子序列
2018/05/22 Python
python实现学员管理系统
2019/02/26 Python
Python3.5基础之函数的定义与使用实例详解【参数、作用域、递归、重载等】
2019/04/26 Python
使用turtle绘制五角星、分形树
2019/10/06 Python
用纯css3和html制作泡沫对话框实现代码
2013/03/21 HTML / CSS
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
毕业研究生的自我鉴定
2013/11/30 职场文书
九月份红领巾广播稿
2014/01/22 职场文书
《夏夜多美》教学反思
2014/02/17 职场文书
四风问题原因分析及整改措施
2014/10/24 职场文书
群众路线教育实践活动心得体会(四风)
2014/11/03 职场文书
员工加薪申请报告
2015/05/15 职场文书
国庆节到了,利用JS实现一个生成国庆风头像的小工具 详解实现过程
2021/10/05 Javascript
css样式important规则的正确使用方式
2022/06/10 HTML / CSS