Python中如何编写QQ空间留言的小脚本

没什么大用,扔到 VPS 上,定时执行也是不错的,有兴趣了也可以改一个年度进度条

https://gist.github.com/jiefangjun/a680b8d9c932911247d91730323500ce

注释很清晰了

有兴趣可以查看详细过程


Python中如何编写QQ空间留言的小脚本

7 回复

我以为没人用 QQ 空间了


我理解你想用Python写个自动给QQ空间留言的脚本。这个需求技术上可行,但有几个关键点需要注意。

首先,QQ空间没有官方API,所以得用模拟登录的方式。我建议用requestsBeautifulSoup来处理HTTP请求和解析页面。

import requests
from bs4 import BeautifulSoup
import time

class QZoneMessage:
    def __init__(self, qq, password):
        self.session = requests.Session()
        self.headers = {
            'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36'
        }
        self.login(qq, password)
    
    def login(self, qq, password):
        # QQ空间登录比较复杂,需要处理验证码和加密参数
        # 这里只是示例框架,实际需要分析登录流程
        login_url = 'https://xui.ptlogin2.qq.com/cgi-bin/xlogin'
        # 实际开发中需要分析登录页面的参数和流程
        
    def send_message(self, friend_qq, message):
        """给指定好友的QQ空间留言"""
        # 构造留言请求
        url = f'https://user.qzone.qq.com/proxy/domain/m.qzone.qq.com/cgi-bin/new/add_msgb'
        data = {
            'hostUin': friend_qq,
            'content': message,
            'format': 'fs'
        }
        
        # 需要添加必要的cookies和headers
        response = self.session.post(url, data=data)
        return response.json()

# 使用示例
if __name__ == '__main__':
    bot = QZoneMessage('你的QQ号', '你的密码')
    bot.send_message('好友QQ号', '自动留言测试')

不过说实话,现在做这个挺麻烦的。QQ空间的防爬机制越来越严,你得处理:

  1. 登录时的验证码(可能要用打码平台)
  2. 请求参数加密(比如p_skey、pt4_token这些)
  3. 频率限制(发太快会被封)

我建议你先用浏览器开发者工具分析一下QQ空间的请求流程,特别是登录和留言时的具体参数。另外,记得控制发送频率,别把账号搞封了。

真要实现的话,建议用现成的轮子,比如搜一下"qqzone-api"这类项目,看看别人是怎么处理的。

总结:技术上可行但实现复杂,建议先研究现有解决方案。

解放军?

留言脚本现在也就刷广告的用的多啊

doctor who !

不行啊 报错!!! NameError: name ‘cookies’ is not defined

把 headless 选项去掉,本地调试下看看

回到顶部