Python实现的爬虫刷回复功能示例
作者:喝了鹤顶红的我 时间:2021-08-30 08:25:22
本文实例讲述了Python实现的爬虫刷回复功能。分享给大家供大家参考,具体如下:
最近闲的无聊,就想着去看看爬虫,顺着爬虫顺利的做到了模拟登录、刷帖子等等,这里简要说一下。
使用Python2.7写的爬虫,对某论坛做模拟登陆和刷帖子、回复等等,由于之前是没有接触过爬虫,这次之后感觉爬虫很强大,能做很多事,先来贴几张图。
由于论坛不让使用相同的文字,所以调用了笑话的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程序设计有所帮助。
来源:https://blog.csdn.net/qq_34067821/article/details/80404444
标签:Python,爬虫
0
投稿
猜你喜欢
javascript 模拟函数指针
2009-09-19 18:02:00
提供效率的几个ASP编程技巧
2010-05-03 11:11:00
Python socket如何实现服务端和客户端数据传输(TCP)
2023-08-25 01:02:43
python实现图片文件批量重命名
2023-08-10 03:39:57
Python实现钉钉/企业微信自动打卡的示例代码
2022-02-18 21:54:02
python人工智能tensorflow优化器Optimizer算法汇总
2023-12-06 14:44:51
基于Vue渲染与插件的加载顺序的问题详解
2024-05-09 15:10:29
Python模块zipfile原理及使用方法详解
2022-03-24 10:33:37
浏览器针对单服务器连接数问题
2008-05-12 22:27:00
MySQL多表查询的具体实例
2024-01-22 00:13:20
分别用两个函数实现的菜单
2024-04-19 10:05:36
python实现报表自动化详解
2021-12-31 04:28:14
Python爬虫制作翻译程序的示例代码
2023-08-13 06:38:35
10 个Python中Pip的使用技巧分享
2023-08-02 17:52:45
10分钟学会Google Map API (一)
2009-06-07 18:17:00
python实现定时同步本机与北京时间的方法
2021-03-24 10:58:14
oracle增加表空间大小两种实现方法
2024-01-15 14:34:12
用Dreamweaver实现飘浮光球特效
2008-03-03 12:28:00
SQL Server 海量数据导入的最快方法
2024-01-16 06:23:25
一文搞懂python异常处理、模块与包
2023-09-05 05:01:25