123下一页
返回列表 发新帖

听说耗子更新教程了???(云函数配合server酱)

[复制链接]

91

主题

3807

回帖

2万

积分

博士后

萌新

Rank: 8Rank: 8

金币
10363
好评
335
信誉
278

考神MT论坛帅哥MT论坛最佳新人MT论坛活跃会员

QQ
发表于 2020-10-3 14:16:05 | 显示全部楼层 | 阅读模式  来自 云南
本帖最后由 正己 于 2020-10-3 14:40 编辑

本教程是利用白嫖的老马的云函数搭配server酱实现帖子更新自动推送至微信主要是最近来论坛的时间也越来越少了,于是就写了这么一个脚本,这个昨天晚上就写好了,经过一晚上的测试没有问题
这里以耗耗为例@耗子爱吃草 ,当然也可以选择其他人,比如久情姐姐,涛涛,狗狗,牛牛等等,使用的方法也很简单,代码也不多,需要修改的地方只有四处,我会在代码里写出来。
其中的url选择你收听的人的主题然后复制链接替换就可以了,server酱的key自己去申请。
还有关于云函数的部署可以参考论坛发过的的帖子,这里需要注意的就是把执行方法改成

看一下效果:
    import urllib.request
    import http.cookiejar
    import re
    import datetime
    import requests
    skey = '申请的server酱的key'
    def push():
        server_url = "https://sc.ftqq.com/%s.send" % skey
        title = main()
        params = {
            "text": '爷,您关注的帖子更新啦!', #server酱提示的标题可自行修改
            "desp": title    ##server酱提示的内容可自行修改
        }
        response = requests.get(server_url, params=params)
        json_data = response.json()
        if json_data['errno'] == 0:
            print(" 推送成功。")
        else:
            print("推送失败")
    def main(*args):
        form = {'formhash': '',
                'referer': 'https://bbs.binmt.cc/forum.php',
                'loginfield': 'username',
                'username': '你的账号',
                'password': '你的密码',
                'questionid': '0',
                'answer': ''}
        headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3562.0 Safari/537.36'}
        loginURL = "https://bbs.binmt.cc/member.php?mod=logging&action=login"
        query = "&loginsubmit=yes&handlekey=login&loginhash=xxx&inajax=1"

        """为什么刚开始就直接使用带Cookie的opener呢,经过测试,在打开登录界面的时候,服务器就会向客户端发送3个Cookie,这些Cookie同样有验证作用,如果不带上,那么登录的时候,服务器会返回,含有非法字符,无法登录"""
        cookie = http.cookiejar.CookieJar()
        opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor(cookie))
        req = urllib.request.Request(loginURL, headers=headers)
        resp = opener.open(req)
        s = resp.read().decode('gb2312', errors='ignore')
        # 获取登录界面的Hash值
        formhash = re.findall('value="(.*?)"><input', s)[0]
        loginhash = re.findall('loginhash=(.*?)">', s)[0]
        form['formhash'] = formhash
        post_form = urllib.parse.urlencode(form).encode('UTF-8')
        req = urllib.request.Request(loginURL + query, headers=headers, data=post_form)
        opener.open(req)
        # 你要访问的网页
        url = 'https://bbs.binmt.cc/home.php?mod=space&uid=4666&do=thread&view=me&from=space'
        req = urllib.request.Request(url, headers=headers)
        resp = opener.open(req)
        haozi = resp.read().decode('UTF-8')
        title = re.findall('target="_blank" >(.*?)</a>', haozi)[0]
        tztime = re.findall('<span title="(.*?)">', haozi)[0]
        if tztime == []:
            print("耗耗还不快更新帖子!!!")
        else:
            d1 = datetime.datetime.strptime(tztime, '%Y-%m-%d %H:%M')  # 将字符串转化为datetime类型的时间
            print(d1)
            d2 = datetime.datetime.now() + datetime.timedelta(hours=8) # 获取当前时间(因为云函数有时区差,所以要加上8个小时)
            print(d2)
            delta = d2 - d1
            print(delta)
            if delta.days < 1 and delta.seconds <= 1800:
                print("两篇帖子相差时间为", delta.seconds, "秒")  # delta.seconds获取相差的秒数
                print("耗耗的帖子更新啦!!!")
                push()
                return title
            else:
                print("耗耗还不快更新帖子!!!")


    if __name__ == '__main__':
        main()










本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

91

主题

3807

回帖

2万

积分

博士后

萌新

Rank: 8Rank: 8

金币
10363
好评
335
信誉
278

考神MT论坛帅哥MT论坛最佳新人MT论坛活跃会员

QQ
发表于 2020-10-3 14:16:32 | 显示全部楼层  来自 云南
本帖最后由 正己 于 2020-10-3 14:39 编辑

不支持markdown差评

回复

使用道具 举报

53

主题

1218

回帖

4591

积分

大学生

铁憨憨

Rank: 5Rank: 5

金币
1178
好评
85
信誉
100
发表于 2020-10-3 14:20:27 来自手机  | 显示全部楼层  来自 广东
牛牛,涛涛,狗狗还行,耗耗你也叫的出口
回复

使用道具 举报

53

主题

1218

回帖

4591

积分

大学生

铁憨憨

Rank: 5Rank: 5

金币
1178
好评
85
信誉
100
发表于 2020-10-3 14:22:27 来自手机  | 显示全部楼层  来自 广东
怎么不用[code]
回复

使用道具 举报

91

主题

3807

回帖

2万

积分

博士后

萌新

Rank: 8Rank: 8

金币
10363
好评
335
信誉
278

考神MT论坛帅哥MT论坛最佳新人MT论坛活跃会员

QQ
发表于 2020-10-3 14:28:00 | 显示全部楼层  来自 云南

用了,不过缩进有问题
回复

使用道具 举报

36

主题

1886

回帖

6988

积分

硕士生

Rank: 6Rank: 6

金币
3346
好评
8
信誉
90
发表于 2020-10-3 14:29:58 来自手机  | 显示全部楼层  来自 广东
Jor 发表于 2020-10-3 14:20
牛牛,涛涛,狗狗还行,耗耗你也叫的出口

JJ
回复

使用道具 举报

89

主题

5299

回帖

2万

积分

版主

经常被骂的背锅侠

Rank: 7Rank: 7Rank: 7

金币
36327
好评
248
信誉
103

考神MT论坛帅哥MT论坛活跃会员MT论坛最佳新人MT论坛侠客MT论坛新人

QQ
发表于 2020-10-3 14:34:05 来自手机  | 显示全部楼层  来自 浙江
可以,这很骚操作
回复

使用道具 举报

53

主题

1218

回帖

4591

积分

大学生

铁憨憨

Rank: 5Rank: 5

金币
1178
好评
85
信誉
100
发表于 2020-10-3 14:36:53 来自手机  | 显示全部楼层  来自 广东
ৡ人生如棋ৡ 发表于 2020-10-3 14:29
JJ

回复

使用道具 举报

0

主题

3283

回帖

1万

积分

博士生

Rank: 7Rank: 7Rank: 7

金币
384
好评
5
信誉
100

考神

发表于 2020-10-3 14:38:23 来自手机  | 显示全部楼层  来自 福建
厉害呀,代码在哪呀
回复

使用道具 举报

91

主题

3807

回帖

2万

积分

博士后

萌新

Rank: 8Rank: 8

金币
10363
好评
335
信誉
278

考神MT论坛帅哥MT论坛最佳新人MT论坛活跃会员

QQ
发表于 2020-10-3 14:40:32 | 显示全部楼层  来自 云南

发了,论坛有问题,你重新刷新一下
回复

使用道具 举报

20

主题

578

回帖

2321

积分

大学生

小百

Rank: 5Rank: 5

金币
124
好评
66
信誉
100
QQ
发表于 2020-10-3 14:53:11 来自手机  | 显示全部楼层  来自 湖北
耗耗可还行。
回复

使用道具 举报

3

主题

2528

回帖

5170

积分

硕士生

Rank: 6Rank: 6

金币
1359
好评
2
信誉
100

考神

发表于 2020-10-3 15:37:18 来自手机  | 显示全部楼层  来自 河南–新乡–辉县
路过。。
回复

使用道具 举报

189

主题

4334

回帖

2万

积分

博士后

Rank: 8Rank: 8

金币
12469
好评
31
信誉
100

考神MT论坛最佳新人MT论坛帅哥MT论坛灌水老大MT论坛新人挂机大佬

发表于 2020-10-3 16:13:29 来自手机  | 显示全部楼层  来自 陕西
本帖最后由 常见的露比 于 2020-10-3 16:51 编辑

会Python的人不少哦,又用requests又用urllib.request的操作把我看蒙了
回复

使用道具 举报

59

主题

1711

回帖

6996

积分

硕士生

烈火米咔

Rank: 6Rank: 6

金币
1163
好评
78
信誉
101

MT论坛最佳新人考神MT论坛帅哥MT论坛活跃会员MT论坛侠客MT论坛新人

发表于 2020-10-3 16:20:57 来自手机  | 显示全部楼层  来自 山西
厉害啊,回复看看。
回复

使用道具 举报

361

主题

4499

回帖

1万

积分

博士生

大佬

Rank: 7Rank: 7Rank: 7

金币
258
好评
62
信誉
107

考神MT论坛最佳新人MT论坛帅哥MT论坛活跃会员MT论坛灌水老大MT论坛侠客MT论坛新人

发表于 2020-10-3 17:09:10 来自手机  | 显示全部楼层  来自 广东
我看看看
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表