news 2026/6/10 11:32:20

微博协议算法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
微博协议算法

最近一直在研究这个,希望能用微博引流,话不多说

# /usr/bin/env python

# -*- coding:utf-8 -*-

import threading

from urllib import request, parse

from bs4 import BeautifulSoup

import http.cookiejar

import json

import random

import time

import configparser

import re

import math

import os

import traceback

import requests

from requests_toolbelt import MultipartEncoderMonitor

from MySqlInter import MySqlInter

'''

构建公共请求头

'''

# 登录

def login(code=0):

login_url = 'https://passport.weibo.cn/sso/login'

# 构造登录参数

params = {

'username': username,

'password': password,

'savestate': '1',

'r': '',

'ec': '0',

'pagerefer': '',

'entry': 'mweibo',

'wentry': '',

'loginfrom': '',

'client_id': '',

'code': '',

'qq': '',

'mainpageflag': '1',

'hff': '',

'hfp': ''

}

params = parse.urlencode(params).encode('utf-8')

req = request.Request(login_url, params, method="POST")

res = request.urlopen(req)

result = res.read().decode('utf-8')

login_result = json.loads(result)

if login_result['msg'] == '':

print('登陆成功')

return True

else:

print(login_result['msg'])

return False

# 上传文件

def upload_pic(str, path):

try:

name = path.split('/')[-1]

m = MultipartEncoderMonitor.from_fields(

fields={'type': 'json',

'pic': (name, open(path, 'rb'), "application/octet-stream"),

'st': str

},

)

# 'cookie': "XSRF-TOKEN=1093d3;MLOGIN=1;SCF=AiDo0hUv7kdmNPD80v_FXfJF-G23i1xPrSs0dgYxnL8lg9pa22w6Ujb59CVuCAiuQNiFzikHGNhBng4vHGpu7MU.;SSOLoginState=1578974457;SUB=_2A25zGUypDeRhGeFN7VsV9CzOzz-IHXVQ4lThrDV6PUJbkdANLXj5kW1NQ_2LYBpJCyz6DjFtfia1vTqvwsOUmrO-;SUHB=08Jrg82rI3lBH9;WEIBOCN_FROM=1110003030;_T_WM=56807055301;login=9de37c72b9f15cd57c8d7fdf3f6fb3c9",

headers = {

'referer': 'https://m.weibo.cn/compose/?pids=',

'Content-Type': m.content_type,

'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36'

}

r = requests.post('https://m.weibo.cn/api/statuses/uploadPic', data=m, headers=headers, cookies=cookie).json()

print(r)

pic_id = r['pic_id']

return pic_id

except:

traceback.print_exc()

# 发微博

def post_weibo(str, content, picIds):

add_weibo_url = 'https://m.weibo.cn/api/statuses/update'

# 构造登录参数

params = {

'content': content,

'st': str,

'picId': picIds

}

params = parse.urlencode(params).encode('utf-8')

req = request.Request(add_weibo_url, params, method="POST")

res = request.urlopen(req)

html = res.read().decode('utf-8')

print(html)

def down_pic(url):

path = "img/"

split = url.split("/")

file_name = path + split[len(split) - 1]

try:

# print("缓存图片中-> " + url + "\n" + "保存至-> " + path)

r = requests.get(url)

file_size = r.headers["Content-Length"]

with open(file_name, 'wb') as f:

f.write(r.content)

f.close()

except:

traceback.print_exc()

return file_name

def auto_post():

try:

sql = MySqlInter(db_config)

build_opener()

is_login = login()

if is_login:

str = get_st()

row = sql.get_available_weibo(3051943081)

print(row)

id = row[0]

content = row[4]

pics = row[7]

pic_ids = ""

if pics != "":

pic_list = pics.split(",")

for pic in pic_list:

file_name = down_pic(pic)

pic_id = upload_pic(str, file_name)

pic_ids += pic_id + ","

post_weibo(str, content, pic_ids[0: len(pic_ids) - 1])

sql.update_weibo_state(int(id))

except:

print("此处发图任务失败!")

timer = threading.Timer(7200, auto_post)

timer.start()

if __name__ == '__main__':

auto_post()

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/10 10:50:42

亲测靠谱的外贸独立站方案分享

谷歌SEO优化行业分析:通科云外贸的卓越解决方案一、行业痛点分析在谷歌SEO优化领域,诸多技术挑战亟待解决。随着谷歌算法的频繁更新,网站的排名规则愈发复杂,众多外贸企业难以精准把握优化方向。数据表明,约70%的外贸网…

作者头像 李华
网站建设 2026/6/10 10:48:43

多核调度优化:ARM架构和x86架构线程管理实战案例

多核调度实战:ARM与x86线程管理的深层差异与工程优化在现代计算系统中,多核处理器早已不是“高性能”的代名词,而是基础配置。从手机到服务器,从边缘网关到云端集群,我们无时无刻不在与多个CPU核心打交道。但你有没有遇…

作者头像 李华
网站建设 2026/6/10 10:48:49

FlaUInspect 2025终极指南:UI自动化测试调试神器从零安装到精通

FlaUInspect 2025终极指南:UI自动化测试调试神器从零安装到精通 【免费下载链接】FlaUInspect Inspect tool to inspect UIs from an automation perspective 项目地址: https://gitcode.com/gh_mirrors/fl/FlaUInspect 还在为UI自动化测试中元素定位不准而苦…

作者头像 李华
网站建设 2026/6/10 10:48:45

打造未来智能指挥的底层引擎:镜像孪生全域空间态势底座

一、背景与战略意义 在新时代的智能治理、综合应急与战略指挥体系建设中,传统二维视频监控与单一数据分析模式已无法满足高维态势洞察及智能决策的需求。为此,镜像视界(浙江)科技有限公司基于其自主可控核心技术群提出了“镜像孪…

作者头像 李华
网站建设 2026/6/10 10:48:45

18、移动应用提交与 RSS 阅读器开发指南

移动应用提交与 RSS 阅读器开发指南 在移动应用开发中,将应用提交到应用商店并开发出实用的应用是关键步骤。以下将详细介绍 iOS 应用提交流程以及 RSS 阅读器应用的设计思路。 一、iOS 应用提交流程 要将应用提交到苹果应用商店,需按以下步骤操作: 1. 创建开发者账户 …

作者头像 李华
网站建设 2026/6/10 12:39:25

Cellpose终极指南:快速掌握细胞分割AI模型的完整使用技巧

Cellpose终极指南:快速掌握细胞分割AI模型的完整使用技巧 【免费下载链接】cellpose 项目地址: https://gitcode.com/gh_mirrors/ce/cellpose Cellpose作为一款强大的细胞分割AI模型,为生物医学研究者提供了简单高效的细胞识别解决方案。无论你是…

作者头像 李华