当前位置:首页 > 娱乐

【微博怎么发】Python 教你自动发微博,每日一句英语

最近在研究用Python制作各种类型的机器人,今天我先分享一下自动发布新浪微博的机器人。

基本思路

其实要实现一个简单的自动发布微博的机器人还是不难的,只需要每天按时找好要发布的素材(一般就是爬虫了),然后再通过微博开放出来的 API 接口,自动发布即可。

素材

对于素材,我这里选取的是金山词霸的每日一句英语,我们可以爬取该网站的相关信息来组成我们的微博素材。

微博 API

微博给广大开发者提供了一个开放平台

当然在使用这个平台之前,我们还是要先注册并创建好应用。比如像我这样,创建一个应用

然后我们还需要设置好安全域名(后面发布微博时会用到),在应用信息->基本信息中设置。

还需要设置应用回调地址,在应用信息->高级信息中设置。

当然对于微博 API 的调用,我们可以使用其他人封装好的第三方库来更加方便的操作,我这里使用了一个就叫做“weibo”的库,直接使用 pip 安装。

pip install weibo

不过我遇到了安装问题,报错如下

Traceback (most recent call last): File ";, line 15, in <module> long_description=open('README.rst').read(), UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 241: illegal multibyte sequence

看起来是编码问题,我们可以通过修改源代码来规避

  • 1. 从 上下载 weibo 库



  • 2. 然后解压该包,并修改文件 如下代码
long_description=open('README.rst', encoding='utf-8').read(),


  • 3. 分别执行如下命令安装
python build python install

至此可以安装 weibo 库成功

准备工作与编写思路就是这些,下面我们来看看具体的过程与代码

自动发布微博

根据 weibo 库的说明文档,使用其操作微博还是相关容易的,只需要提供我们创建微博应用时的 App Key 与 App Secret 和应用回调地址信息即可。简单的调用代码如下

from weibo import Client c = Client('App Key', 'App Secret', ';, username='username', password='password') c.post('statuses/share', status='haha' + 安全域名)

我们运行该代码,如果不出意外的话,我们就能够在该账号下的微博中看到刚刚发布的微博了。

最简单的微博已经发布成功了,那么能不能发布带有图片的微博呢,我们来尝试一下

根据接口 statuses/share 的文档说明,我们可以传入 pic 参数来进行图片的上传

我们传入 pic 参数尝试下

f = open('4.png', 'rb') c.post('statuses/share', status='haha' + 安全域名, pic=f) f.close()

可以的,能够正常发布带有图片的微博

那么现在自动发布微博搞定了,我们再来看看如何自动获取微博素材

微博素材

对于金山词霸的每日一句,我们可以使用如下的一个 API 来获得每天的信息

可以看到该接口返回的如下信息

我们可以直接使用 requests 库来调用该接口

import requests url = '' res = reque(url) content_e = res.json()['content'] content_c = res.json()['note'] content = content_e + '\n' + content_c content_t = res.json()['picture2']

现在我们来封装两个函数,把功能完善起来

def weibo(content, picture): ff = reque(picture).content c = Client(app_key, app_secret, ';, username=username, password=password) c.post('statuses/share', status=content + ';, pic=ff) def auto_weibo(): url = '' res = reque(url) content_e = res.json()['content'] content_c = res.json()['note'] content = content_e + '\n' + content_c content_t = res.json()['picture2'] weibo(content, content_t) return 'OK'

现在我们就可以创建一个定时任务,每天7点运行该脚本就可以啦

0 7 * * * python au

最后效果如下


1.《【微博怎么发】Python 教你自动发微博,每日一句英语》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【微博怎么发】Python 教你自动发微博,每日一句英语》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/yule/3208562.html

上一篇

【石黑英雄】礼堂光和红凯,都有着什么不同的经历

下一篇

【玟星】1月7日韩语新歌资讯:Woozi-ENHYPEN-LYN-YUJU-ONEWE-玟星

电脑新浪微博怎么发私信?我来告诉你答案微博怎么群发信息给粉丝私信 群发功能在哪介绍

电脑新浪微博怎么发私信相关介绍,[闽南网] Weibo批量传输功能在日常用户体验中占有重要地位,为用户提供了大量便捷的信息传输。让我们看一下此功能的使用工作共享。 在微博里群发功能使用过程讲解 在网页上搜索新浪微博,输入账号进行登录...

电脑新浪微博怎么发私信?我来告诉你答案微博几个常用的功能

  • 电脑新浪微博怎么发私信?我来告诉你答案微博几个常用的功能
  • 电脑新浪微博怎么发私信?我来告诉你答案微博几个常用的功能
  • 电脑新浪微博怎么发私信?我来告诉你答案微博几个常用的功能

长微博怎么发啊?总结很全面速看!希望下一代能看着国产动画电影长大

  • 长微博怎么发啊?总结很全面速看!希望下一代能看着国产动画电影长大
  • 长微博怎么发啊?总结很全面速看!希望下一代能看着国产动画电影长大
  • 长微博怎么发啊?总结很全面速看!希望下一代能看着国产动画电影长大

关于长微博怎么发啊,你需要知道这些36氪专访|快看CEO陈安妮:NFT最关键的是社区和IP,出海是未来重点战略方向

长微博怎么发啊相关介绍,7月中旬下午,36氪在活动酒店见到CEO陈安妮,她刚刚结束年度发布会演讲,接着去见投资人。 这位92年的CEO,在微博上曾经依靠漫画走红,拥有千万粉丝,但如今,她几乎不再发微博,最近几年,每年年中的发...

【微博怎么发】如何发布热门微博?下面几招告诉你

  • 【微博怎么发】如何发布热门微博?下面几招告诉你
  • 【微博怎么发】如何发布热门微博?下面几招告诉你
  • 【微博怎么发】如何发布热门微博?下面几招告诉你

【微博怎么发】微博长文在哪里发 微博长文发布教程分享

  • 【微博怎么发】微博长文在哪里发 微博长文发布教程分享
  • 【微博怎么发】微博长文在哪里发 微博长文发布教程分享
  • 【微博怎么发】微博长文在哪里发 微博长文发布教程分享

【微博怎么发】微博能发18张图片了!微博怎么发18张图片最新教程

  • 【微博怎么发】微博能发18张图片了!微博怎么发18张图片最新教程
  • 【微博怎么发】微博能发18张图片了!微博怎么发18张图片最新教程
  • 【微博怎么发】微博能发18张图片了!微博怎么发18张图片最新教程
【微博怎么发】怎么发微博才能提高阅读量?这 6 点很多人没重视起来

【微博怎么发】怎么发微博才能提高阅读量?这 6 点很多人没重视起来

微博怎么发相关介绍,这是饥饿的第29个原创句子 作家|饿编辑|饿 来源|我饿了(id: eshiyiblog) 要提高微博的阅读量,首先要弄清楚微博阅读量来自哪个频道。 通过小饿的观察,微博的阅读量通常包括这几种渠道: ...