要自动发微博最简单的办法无非是调用新浪微博的API(因为只是简单的发微博,就没必要用它的SDK了)。参考开发文档http://open.weibo.com/wiki/API进行代码编写

创建应用

要使用微博的API,需先要有个应用。随便是个应用就行,可以到这里注册一个站内应用应用注册。注册应用的主要目的是要获得MY_APPKEY 和MY_ACCESS_TOKEN,如图所示

获取access_token

API的调用需要登录授权获得access_token。参考

首先,调用https://api.weibo.com/oauth2/authorize接口,获得code。

该接口有三个必须的参数:

client_id:申请应用时分配的AppKey。

redirect_url:就是创建应用中设置的回调地址

response_type:响应类型,可设置为code

具体做法,就是在浏览器打开https://api.weibo.com/oauth2/authorize?client_id=123050457758183&redirect_uri=http://www.example.com/response&response_type=code。该方法会转到授权页面,授权之后会转到http://www.example.com/response&code=CODE,记录下该url中的CODE。

接着,调用https://api.weibo.com/oauth2/access_token接口,获得access_token。

该接口有如下必须的参数:

client_id:申请应用时分配的AppKey。

client_secret:申请应用时分配的AppSecret。

grant_type:请求的类型,填写authorization_code

code:调用authorize获得的code值。

redirect_uri:就是创建应用中设置的回调地址

具体做法就是构建一个POST请求,再在返回的数据中找到access_token,保存下来。具体的Python代码:

import requests

url_get_token = "https://api.weibo.com/oauth2/access_token"

#构建POST参数

playload = {

"client_id":"填入你的",

"client_secret":"填入你的",

"grant_type":"authorization_code",

"code":"上面获得的CODE",

"redirect_uri":"你的回调用地址"

}

#POST请求

r = requests.post(url_get_token,data=playload)

#输出响应信息

print r.text

如果正常的话,会返回下面这样的json数据:

{"access_token":"我们要记下的","remind_in":"157679999","expires_in":157679999,"uid":"1739207845"}

根据返回的数据,access_token的值就是我们要的。其中remind_in的值是access_token的有效期,单位为秒,我们可以看到,这个时间有3、4年之久,足够我们用了。

发表纯文字微博

调用接口https://api.weibo.com/2/statuses/update.json发表文字微博,其参数如下

其中必须的:

access_token:就是我们上一步获得的access_token

status:要发布的微博文本内容,必须做URLencode,内容不超过140个汉字

具体代码:

#发表文字微博的接口

url_post_a_text = "https://api.weibo.com/2/statuses/update.json"

#构建POST参数

playload = {

"access_token":"填入你的",

"status":"This is a text test@TaceyWong"

}

#POST请求,发表文字微博

r = requests.post(url_post_a_text,data = playload)

如果正常,会有向下面这样的结果

发表带图片的微博

调用接口http://open.weibo.com/wiki/2/statuses/upload发表图片微博,其参数如下:

其中必须的参数:

access_token:就是我们上一步获得的access_token

status:要发布的微博文本内容,必须做URLencode,内容不超过140个汉字

pic:要发表的图片,采用multipart/form-data编码方式

具体的代码:

#发表图文微博的接口

url_post_pic = "https://upload.api.weibo.com/2/statuses/upload.json"

#构建文本类POST参数

playload={

"access_token":"",

"status":"Test:Post a text with a pic & AT someone@丸子覠"

}

#构建二进制multipart/form-data编码的参数

files={

"pic":open("logo.png","rb")

}

#POST请求,发表微博

r = requests.post(url_post_pic,data=playload,files = files)

如果正常,结果会像下面这样:

注:requests的具体用法请参考[requests文档](http://docs.python-requests.org/en/master/)

java自动发图文微博_自动发带图的微博相关推荐

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

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

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

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

  3. 用python定时自动发微博_Python脚本实现自动发带图的微博

    要自动发微博最简单的办法无非是调用新浪微博的API(因为只是简单的发微博,就没必要用它的SDK了).参考开发文档http://open.weibo.com/wiki/API 进行代码编写 创建应用 要 ...

  4. python贴吧发帖脚本-Python脚本实现自动发带图的微博

    要自动发微博最简单的办法无非是调用新浪微博的API(因为只是简单的发微博,就没必要用它的SDK了).参考开发文档http://open.weibo.com/wiki/API 进行代码编写 创建应用 要 ...

  5. 安卓自动滑屏脚本_自动滑屏软件下载-自动滑屏 安卓版v3.1.0-PC6安卓网

    自动滑屏脚本是一款特别神奇的安卓手机美化型实用工具.自动滑屏软件拥能支持自定义编辑代码脚本,通过自动滑屏app可以让大家的手机体验度得到很大程度改进,使用起来更顺手! 软件介绍 自动滑屏脚本是一款不需 ...

  6. java 自动发qq消息_用java写的乞丐版QQ微信自动信息发送工具

    [Java] 纯文本查看 复制代码package QQWchat; import java.awt.AWTException; import java.awt.Robot; import java.a ...

  7. 山寨机java自动发短信_恶搞短信附带代码 山寨手机最容易中招黑屏

    恶搞短信附带代码 山寨手机最容易中招黑屏 2012-03-27 13:49:34  来源:钱江晚报 扫码可以: 1.在手机上浏览 2.分享给微信好友或朋友圈 摘要: 用一条短信就能让你手机" ...

  8. seo自动发外链_一套节约成本全网营销方案-小小课堂SEO培训教程

    很多公司都是由一些小型工作室或个人工作室慢慢发展而来的,在这过程中,人员.资金链.资源.项目等因素一旦出现问题,可能会导致项目失败,那么在互联网上投入的资金如果过多,可能都是白白打了水漂. 今天,小小 ...

  9. 用java做小学数学系统_自动生成中小学数学题目的控制台小程序

    正版现货scratch+小学数学编程教材 106.5元 包邮 (需用券) 去购买 > 前段时间写了一个自动生成中小学数学题目的控制台小程序 下面简要介绍一下我这次的一个开发过程 需求: 1.命令 ...

  10. python自动发微信新闻_微信群总有人发广告?用Python写一个自动化机器人消灭他...

    作者 | 刘早起 出品 | 早起Python(ID: zaoqi-python) 或者是一声不吭的去骚扰每一个群成员. 虽然不清楚是什么能够驱使他们这样不折不扣的努力成为最强微信群牛皮癣(可能是钞能力 ...

最新文章

  1. Android入门——电话拨号器和4种点击事件
  2. 批量下载_Zip压缩包的方式
  3. zookeeper教程
  4. php 目录限制,限定某个目录禁止解析php,限制user_agent,php相关配置
  5. dotnet core 数据库
  6. CSS样式特点及优先级
  7. 心得9--jsp设计模版
  8. sequelize模型关联_关于Sequelize连接查询时inlude中model和association的区别详解
  9. Django REST FRAMEWORK swagger(一)框架详解
  10. python设计模式8-组合模式
  11. 一级b类计算机考试题目和类型,第五章计算机一级B类高职考试习题资料.doc
  12. 安卓的自动启动设置界面的启动代码
  13. jmeter教程https://max.book118.com/html/2019/0108/6145005114002000.shtm
  14. matlab图像身高测量,基于Kinect景深图像的快速身高和体重测量方法
  15. VS2008下载地址和版本破解
  16. 计算机术语 日语,常用日语计算机词汇~~
  17. hive改表结构的两个坑
  18. ARM+SD2405 IIC_RTC驱动编写及IIC通讯协议
  19. 蓝牙路由器蓝牙点对多点组网蓝牙远程控制
  20. NAT之server nat

热门文章

  1. Excel如何复制一摸一样的表格或建立副本
  2. 列宽一字符等于多少厘米_excel表格行高和列宽各是多少毫米或厘米啊?
  3. IntelliJ IDEA 超实用使用技巧分享
  4. linux quota原理,[转载]linux下quota实现
  5. mybatis plus table doesn't exists
  6. 管理学定律八:晕轮效应与霍桑效应
  7. Parsing error: No Babel config file detected for ....
  8. k-max-pooling
  9. [C#复习向整合]反射 -Assembly与Activator
  10. unity游戏开发之游戏过审后 国行PS4将在3月20日发售