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

作者:喝了鹤顶红的我 时间:2021-08-30 08:25:22 

本文实例讲述了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程序设计有所帮助。

来源:https://blog.csdn.net/qq_34067821/article/details/80404444

标签:Python,爬虫
0
投稿

猜你喜欢

  • JS简单实现DIV相对于浏览器固定位置不变的方法

    2023-08-05 22:30:12
  • 带你深入了解Access数据库的4种安全方式

    2008-11-28 14:34:00
  • asp HTTP_X_FORWARDED_FOR和REMOTE_ADDR

    2010-07-02 12:33:00
  • Python使用Keras OCR实现从图像中删除文本

    2022-07-22 20:50:24
  • YOLOv5目标检测之anchor设定

    2022-04-23 16:22:10
  • Python使用struct处理二进制(pack和unpack用法)

    2022-12-23 08:27:56
  • 教你轻松了解MySQL数据库中的结果字符串

    2009-02-23 17:29:00
  • MSSQL数据库排序规则如何更改

    2023-07-01 11:09:58
  • ASP JSON类源码

    2011-04-30 16:38:00
  • 正确认识MySQL对服务器端光标的限制

    2008-12-03 15:52:00
  • Oracle的数据字典技术简析

    2010-07-20 13:03:00
  • Numpy np.array()函数使用方法指南

    2023-05-23 09:33:37
  • 百分百弹窗

    2013-08-07 07:41:06
  • Python for循环搭配else常见问题解决

    2021-04-23 06:08:56
  • Python 关于反射和类的特殊成员方法

    2021-10-16 19:30:13
  • 详解php处理大并发大流量大存储

    2023-07-21 13:11:02
  • ASP的数据命名有什么规则吗?

    2009-10-28 18:23:00
  • position两三事

    2009-02-16 15:23:00
  • Linux操作系统下MySQL数据库的使用方法

    2008-12-26 09:24:00
  • Python + selenium自动化环境搭建的完整步骤

    2023-11-19 12:42:57
  • asp之家 网络编程 m.aspxhome.com