python自动发微博,调用微博H5接口

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

# /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 Trueelse: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_idexcept: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_namedef 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()

效果如下,就可以实现自动发图文了

需要源码可以联系我哦,微信:wl0000123456789

源码卖300块一份,嘿嘿

python 自动发微博 (微博H5接口)相关推荐

  1. 利用 Python 自动抓取微博热搜,并定时发送至邮箱

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 夜阑卧听风吹雨,铁马冰河入梦来. ...

  2. Python自动发短信给自己手机

    Python自动发短信给自己手机 国外有一家公司Twilio推出了一项自动发送短信的服务,只需要在官网上注册并且获取权限即可,这在我们做服务器监控或者其他监控内容时有很大的作用,下面我直接提出代码. ...

  3. 通过Python自动发邮件《生如夏花》

    今天ajupyter和姐姐出去逛了一天街,累死了.晚上读了一首非常美丽的诗词,是泰戈尔的<生如夏花>,感觉非常美,再加上前几天学会了用python自动发邮件,决定把这首诗发给自己的好朋友欣 ...

  4. python发送邮件 python发送qq,163,sohu, xinlang, 126等邮件 python自动发邮件总结及实例说明...

    python发邮件需要掌握两个模块的用法,smtplib和email,这俩模块是python自带的,只需import即可使用.smtplib模块主要负责发送邮件,email模块主要负责构造邮件. sm ...

  5. python 自动发微博_用 Python 自动定时发微博

    原标题:用 Python 自动定时发微博 其实小帅b已经挺久没有玩微博了,记得上次玩微博还是为了给周杰伦打榜,不过最近心血来潮,觉得俺的微博账号躺着也是躺着,要不就用 Python 做一个自动定时发微 ...

  6. python 自动发微博_GitHub - RisingStar20/pf_send_weibo: 通过爬虫自动发微博的Python项目...

    pf_send_weibo 通过爬虫自动发微博的Python项目 要爬取的网站 配置自己的微博账号: USER_NAME 用户名 PASSWD 密码 # 登录方式 LOGIN_TYPE_UID = & ...

  7. java自动发图文微博_使用node搭建自动发图文微博机器人的方法

    本文仅供学习交流,请勿用于商业用途,并遵守新浪微博相关规定. 代码目录 此微博机器人的实现功能如下: 模拟登陆新浪微博,获取cookie: 自动上传图片至微博图床: 自动发送内容不同的图文微博: 通过 ...

  8. java自动发图文微博_使用node搭建自动发图文微博机器人

    仅供学习交流,请勿用于商业用途,并遵守新浪微博相关规定. 代码目录 此处输入图片的描述 此微博机器人的实现功能如下: 模拟登陆新浪微博,获取cookie: 自动上传图片至微博图床: 自动发送内容不同的 ...

  9. python自动发QQ邮箱小程序

    简介 这是一个利用爬虫获取API接口数据,通过smtp协议发送邮件到QQ邮箱的小程序,系统设置定时发送.调用了几个接口,大概有以下这几个内容了,比如天气情况,十万个冷笑话,名言名句,冷知识等等,可以根 ...

最新文章

  1. 与跨国巨头合作,做羊还是做狼? --- 我看SAP取消HAND合作伙伴资格
  2. Eclipse利用Maven的插件部署web项目到远程tomcat服务器
  3. XV6700刷evdo详细教程
  4. 《系统集成项目管理工程师》必背100个知识点-75配置标识的基本内容
  5. Hibernate 发展之路
  6. WebService生成客户端代理的工具WSDL参数介绍
  7. 给地球上的22.8万种植物建立图像索引
  8. 什么?你竟然还没有用这几个chrome插件? 1
  9. Android P (2)---Android 9.0 “Pistachio Ice Cream”新功能和特性
  10. 第 3 章 MybatisPlus 注入 SQL 原理分析
  11. python读取matlab数据_详解如何在python中读写和存储matlab的数据文件(*.mat)
  12. 哈希值之逆序数与变进制
  13. linux调度器(四)——主调度器与CFS
  14. 金融交易学——一个专业交易者…
  15. 【计算机网络学习笔记16】网络新技术
  16. java 获取excel的行数_关于Java:如何使用POI库获取Excel文件中的行数?
  17. vue3使用dayjs
  18. 李佳琦同款美容仪,让护肤品效果翻倍
  19. Pytorch统计模型参数量和计算量
  20. 极验3forbidden,易盾d包

热门文章

  1. UI设计师面试时必须注意的6大问题
  2. 若依框架免密登录(仅做参考)
  3. 自制的百度输入法皮肤
  4. java模拟post发送文件
  5. 产品随记-无埋点数据采集
  6. Intellij IDEA如何设置为中文界面?
  7. 如何在Windows和centOS系统之间实现复制粘贴?步骤如下
  8. oracle emp imp 使用介绍
  9. 多传感器融合定位七-惯性导航解算及误差分析其一
  10. 进化计算原理和实现(遗传算法)