网站调用新浪微博内容

网站调用新浪微博内容

网站调用新浪微博内容(一下梦做网站之首页调用文章内容的方法(一))

网站优化优采云 发表了文章 • 0 个评论 • 44 次浏览 • 2022-01-05 02:11 • 来自相关话题

  网站调用新浪微博内容(一下梦做网站之首页调用文章内容的方法(一))
  使用织梦做网站时,有时需要调用首页文章的内容。今天来讲解一下首页文章内容的调用方法。
  1、首页调用指向栏最新文章内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  注:以上代码typeid=2是指最新文章文章调用id=2的列。如果我们要调用文章的指定片段的内容,可以把上面的typeid改成aid,然后直接调用文章的id。
  特点:这段代码可以调用文章的所有内容,并保持文章的格式。
  2、调用特定文章的内容文章,可以使用如下代码:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  说明:aid=2,指的是文章调用文章id=2的内容。检查文章id的方法很简单。进入具体栏目,看到文章标题左边的数字是文章id,如下图:
  特点:此代码调用指定的特定文章文章,也调用整个内容,保持文章的格式。
  3、 以上两种方法调用了文章的全部内容,如果只调用了部分内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body function="cn_substr(@me,120)" /]
  {/dede:sql}
  说明:该函数="cn_substr(@me,120)" 代码用于限制显示内容的字数。
  特点:文章调用部分的代码可以保持文章的格式,可以调用文章中的图片、视频等其他元素。
  总结:以上是如何调用首页文章的内容。 查看全部

  网站调用新浪微博内容(一下梦做网站之首页调用文章内容的方法(一))
  使用织梦做网站时,有时需要调用首页文章的内容。今天来讲解一下首页文章内容的调用方法。
  1、首页调用指向栏最新文章内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  注:以上代码typeid=2是指最新文章文章调用id=2的列。如果我们要调用文章的指定片段的内容,可以把上面的typeid改成aid,然后直接调用文章的id。
  特点:这段代码可以调用文章的所有内容,并保持文章的格式。
  2、调用特定文章的内容文章,可以使用如下代码:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  说明:aid=2,指的是文章调用文章id=2的内容。检查文章id的方法很简单。进入具体栏目,看到文章标题左边的数字是文章id,如下图:
  特点:此代码调用指定的特定文章文章,也调用整个内容,保持文章的格式。
  3、 以上两种方法调用了文章的全部内容,如果只调用了部分内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body function="cn_substr(@me,120)" /]
  {/dede:sql}
  说明:该函数="cn_substr(@me,120)" 代码用于限制显示内容的字数。
  特点:文章调用部分的代码可以保持文章的格式,可以调用文章中的图片、视频等其他元素。
  总结:以上是如何调用首页文章的内容。

网站调用新浪微博内容(新浪微博官方与今日发布微博桌面客户端,快来下载)

网站优化优采云 发表了文章 • 0 个评论 • 62 次浏览 • 2022-01-05 02:10 • 来自相关话题

  网站调用新浪微博内容(新浪微博官方与今日发布微博桌面客户端,快来下载)
  通过微博,我们可以更快地获取信息,更快地发布信息。越来越多的朋友沉迷于微博。长期以来,我们需要在网页网站上登录微博才能玩微博。博客,步骤比较繁琐。如果有微博桌面客户端就好了。新浪微博今天正式发布了微博桌面客户端。如果您期待在桌面上更方便地玩新浪微博,请赶快下载吧!
  
  新浪微博桌面客户端的特点:
  1.界面多变程序体积小,界面简洁,内容丰富,浏览方便!
  2.易聊程序支持在线终端显示,好友列表群组浏览,不用担心,聊天内容别人看不到,因为是在私信里显示的!(嘿嘿,那个SB导演早点用这个工具应该不会有问题吧!)
  3、实时提醒与网页版微博相同。其他博主的转发、@、评论都会实时显示,重要信息不会错过!
  4.多彩换肤微博桌面客户端,支持多彩换肤,可以轻松选择自己喜欢的界面颜色
  5、便捷的信息发布桌面客户端有多种贴心的快捷键,可以轻松调用各种功能!同时支持拖拽图片发布微博、截图、微博,发布信息更方便!
  6、@联想输入也许你有很多朋友,名字很难记住,别怕,输入@+任意字符,它会立即匹配到相关朋友的名字!
  新浪微博桌面客户端下载:
  去官方下载| 直接下载(windows)| 其他系统
  还有很多第三方开发的微博桌面客户端。你最喜欢哪个?欢迎分享您的经验! 查看全部

  网站调用新浪微博内容(新浪微博官方与今日发布微博桌面客户端,快来下载)
  通过微博,我们可以更快地获取信息,更快地发布信息。越来越多的朋友沉迷于微博。长期以来,我们需要在网页网站上登录微博才能玩微博。博客,步骤比较繁琐。如果有微博桌面客户端就好了。新浪微博今天正式发布了微博桌面客户端。如果您期待在桌面上更方便地玩新浪微博,请赶快下载吧!
  
  新浪微博桌面客户端的特点:
  1.界面多变程序体积小,界面简洁,内容丰富,浏览方便!
  2.易聊程序支持在线终端显示,好友列表群组浏览,不用担心,聊天内容别人看不到,因为是在私信里显示的!(嘿嘿,那个SB导演早点用这个工具应该不会有问题吧!)
  3、实时提醒与网页版微博相同。其他博主的转发、@、评论都会实时显示,重要信息不会错过!
  4.多彩换肤微博桌面客户端,支持多彩换肤,可以轻松选择自己喜欢的界面颜色
  5、便捷的信息发布桌面客户端有多种贴心的快捷键,可以轻松调用各种功能!同时支持拖拽图片发布微博、截图、微博,发布信息更方便!
  6、@联想输入也许你有很多朋友,名字很难记住,别怕,输入@+任意字符,它会立即匹配到相关朋友的名字!
  新浪微博桌面客户端下载:
  去官方下载| 直接下载(windows)| 其他系统
  还有很多第三方开发的微博桌面客户端。你最喜欢哪个?欢迎分享您的经验!

网站调用新浪微博内容(非一个完整的图形化软件:下载新浪微博的软件)

网站优化优采云 发表了文章 • 0 个评论 • 58 次浏览 • 2022-01-04 03:22 • 来自相关话题

  网站调用新浪微博内容(非一个完整的图形化软件:下载新浪微博的软件)
  本文文章主要介绍编写一个调用新浪微博API发送微博的Java程序的方法。它只展示了一个基本的程序框架,而不是一个完整的图形软件:) 有需要的朋友可以参考以下
  首先需要下载新浪微博SDK,地址如下:
  下载后解压,然后打开myeclipse,新建一个项目,然后将解压的Import导入到项目中。如图:
  
  接下来,转到此 URL 以注册应用程序。有3种应用程序,在站点上选择应用程序,然后创建一个应用程序。应该填的都填上,确认就OK了。有两点需要注意:
  1.注册应用后,会有App Key和App Secret,接下来要用到。
  2、进入“我的申请”,选择:申请信息,
  点击“编辑”,注意有两个地址:“适用实际地址”要认真填写,我的是,注意地址后面不要有“/”。现在,记住这个地址,你下次会用到。
  现在转到myeclipse,src下有一个config.properties文件,编辑它
  client_ID 是应用密钥。
  client_SERCRET 是应用机密
  redirect_URI 是前面提到的地址:
  保存。
  接下来,我们发一条微博:
  examples下,weibo4j.examples.oauth2包下:OAuth4Code类,直接运行:出现应用授权页面,输入用户名和密码后,跳转到之前填写的redirect_URI页面。如果微博信息保存在浏览器中,会直接跳转到redirect_URI页面,不经过该页面。
  重定向到redirect_URI页面后,在URL地址栏中看到格式为redirect_URI?代码=xxxxxx。接下来复制代码的值,然后进入myeclipse的控制台输出,看到:
   code=https://api.weibo.com/oauth2/a ... Dcode Hit enter when it's done.[Enter]:
  接下来,将代码粘贴到 [Enter]: 后面。进入。你会看到很多输出信息。
  跳到最后看access_token,这就是我们需要的,记录一下。
  接下来发微博:
  weibo4j.examples.timeline包下,UpdateStatus类下/
  需要传入两个参数,所以我直接写了。代码如下:
   packageweibo4j.examples.timeline; importweibo4j.Timeline; importweibo4j.Weibo; importweibo4j.examples.oauth2.Log; importweibo4j.model.Status; importweibo4j.model.WeiboException; publicclassUpdateStatus { publicstaticvoidmain(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = newWeibo(); weibo.setToken(access_token); Timeline tm = newTimeline(); try{ Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch(WeiboException e) { e.printStackTrace(); } } } package weibo4j.examples.timeline; import weibo4j.Timeline; import weibo4j.Weibo; import weibo4j.examples.oauth2.Log; import weibo4j.model.Status; import weibo4j.model.WeiboException; public class UpdateStatus { public static void main(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = new Weibo(); weibo.setToken(access_token); Timeline tm = new Timeline(); try { Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch (WeiboException e) { e.printStackTrace(); } } }
  状态是您要发布的内容。
  此时,您可以发送微博了。
  有问题请留言。 !
  附上:
  有时,例如在使用其他微博账号(即与注册应用不同的账号)时,会出现一些错误。错误信息:
   {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} eibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18) {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} weibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18)
  对此的解决方法:还是在我的应用中,点击“应用信息”,“测试账号”,看到添加了一个测试账号,这时候就添加你要添加的账号的用户昵称发微博到,就OK了。
  以上是编写一个Java程序,调用新浪微博API发送微博的详细内容。详情请关注html中文网站其他相关文章! 查看全部

  网站调用新浪微博内容(非一个完整的图形化软件:下载新浪微博的软件)
  本文文章主要介绍编写一个调用新浪微博API发送微博的Java程序的方法。它只展示了一个基本的程序框架,而不是一个完整的图形软件:) 有需要的朋友可以参考以下
  首先需要下载新浪微博SDK,地址如下:
  下载后解压,然后打开myeclipse,新建一个项目,然后将解压的Import导入到项目中。如图:
  
  接下来,转到此 URL 以注册应用程序。有3种应用程序,在站点上选择应用程序,然后创建一个应用程序。应该填的都填上,确认就OK了。有两点需要注意:
  1.注册应用后,会有App Key和App Secret,接下来要用到。
  2、进入“我的申请”,选择:申请信息,
  点击“编辑”,注意有两个地址:“适用实际地址”要认真填写,我的是,注意地址后面不要有“/”。现在,记住这个地址,你下次会用到。
  现在转到myeclipse,src下有一个config.properties文件,编辑它
  client_ID 是应用密钥。
  client_SERCRET 是应用机密
  redirect_URI 是前面提到的地址:
  保存。
  接下来,我们发一条微博:
  examples下,weibo4j.examples.oauth2包下:OAuth4Code类,直接运行:出现应用授权页面,输入用户名和密码后,跳转到之前填写的redirect_URI页面。如果微博信息保存在浏览器中,会直接跳转到redirect_URI页面,不经过该页面。
  重定向到redirect_URI页面后,在URL地址栏中看到格式为redirect_URI?代码=xxxxxx。接下来复制代码的值,然后进入myeclipse的控制台输出,看到:
   code=https://api.weibo.com/oauth2/a ... Dcode Hit enter when it's done.[Enter]:
  接下来,将代码粘贴到 [Enter]: 后面。进入。你会看到很多输出信息。
  跳到最后看access_token,这就是我们需要的,记录一下。
  接下来发微博:
  weibo4j.examples.timeline包下,UpdateStatus类下/
  需要传入两个参数,所以我直接写了。代码如下:
   packageweibo4j.examples.timeline; importweibo4j.Timeline; importweibo4j.Weibo; importweibo4j.examples.oauth2.Log; importweibo4j.model.Status; importweibo4j.model.WeiboException; publicclassUpdateStatus { publicstaticvoidmain(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = newWeibo(); weibo.setToken(access_token); Timeline tm = newTimeline(); try{ Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch(WeiboException e) { e.printStackTrace(); } } } package weibo4j.examples.timeline; import weibo4j.Timeline; import weibo4j.Weibo; import weibo4j.examples.oauth2.Log; import weibo4j.model.Status; import weibo4j.model.WeiboException; public class UpdateStatus { public static void main(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = new Weibo(); weibo.setToken(access_token); Timeline tm = new Timeline(); try { Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch (WeiboException e) { e.printStackTrace(); } } }
  状态是您要发布的内容。
  此时,您可以发送微博了。
  有问题请留言。 !
  附上:
  有时,例如在使用其他微博账号(即与注册应用不同的账号)时,会出现一些错误。错误信息:
   {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} eibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18) {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} weibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18)
  对此的解决方法:还是在我的应用中,点击“应用信息”,“测试账号”,看到添加了一个测试账号,这时候就添加你要添加的账号的用户昵称发微博到,就OK了。
  以上是编写一个Java程序,调用新浪微博API发送微博的详细内容。详情请关注html中文网站其他相关文章!

网站调用新浪微博内容(dedecms织梦TAG标签如何显示单个标签共有多少多少 )

网站优化优采云 发表了文章 • 0 个评论 • 49 次浏览 • 2022-01-01 18:05 • 来自相关话题

  网站调用新浪微博内容(dedecms织梦TAG标签如何显示单个标签共有多少多少
)
  3/3/201801:06:46
  上周,微信公众平台发布公告,要求开发者尽快将现有通过HTTP调用的服务切换为HTTPS调用。平台将于2017年12月30日停止支持HTTP调用,距离微信要求的截止日期还有三个月。开发者如何在三个月内快速将相关服务器升级为HTTPS加密?微信公众号API停止支持HTTP调用。微信公告正文:为保证数据传输安全,提高业务安全性,公众平台将不再支持HTTP调用。避免阴影
  
  一篇关于标签编写标准的文章文章
  12/9/200722:02:00
  Tag 是英文标签的中文翻译,也叫“自由分类”和“焦点分类”。 TAG的分类功能,标签确实对用户体验有很好的享受,可以快速找到相关的文章和信息。
  
  dedecms织梦TAG标签如何显示单个标签中有多少文章文章
  15/9/202015:02:18
  搭建网站服务器文章主要介绍dedecms织梦TAG标签如何显示单个标签有多少文章文章,有一定参考作用物超所值,有需要的朋友可以参考下。希望大家看完
  
  教你写一个愿意分享的公众号文章
  24/9/201514:28:00
  很多企业或微商在运营微信公众号时最常用的方法之一就是写文章,通过文章吸引用户注意力,使用文章来吸引用户积极转发和传播,但是如何写一篇文章的文章,让它愿意在公众号中分享呢?有人说,开通公众号运营首先要做的就是增加粉丝数量。错了,这是第一个目标,但是提高粉丝质量也很重要,否则会有粉丝
  
  WordPress博客小部件实现调用其他网站文章
  的方法
  8/12/201022:09:00
  一些使用 WordPress 的博主有时可能想在他们的 WordPress 博客中调用其他 WordPress 博客或其他 网站文章。通常博主首先想到的就是使用插件来实现这种传输。事实上,您不需要使用插件。 WordPress 博客的后端集成了提要调用。您可以拨打其他网站文章。
  
  如何快速原创有卷的文章文章
  微信公众号
  29/4/201511:01:00
  微信公众号越来越规范,腾讯官方也对原创文章有一些特殊的处理,比如文章原创保护和赞赏功能, 文章 评论等,很大程度上给了原创的作者更多的好处。
  
  如何用产品思维操作微信公众号?
  17/11/201511:01:00
  [文章总结]我觉得微信公众号的运营也需要产品思维。如何评价一个公众号是否“有吸引力”?我个人认为最有说服力的标准应该是活跃用户的数量和比例。说说我运营的公众号,名字
  
  公众号群发文章支持添加小程序
  22/4/201709:43:00
  微信官方平台发布消息:为方便用户在阅读文章时使用微信公众号提供的服务,公众号群发文章支持添加小程序卡片。
  
  网站建筑公司如何使用文章排水
  27/12/202112:16:35
  网站如何使用建筑公司文章排水来源:尚品中国|类型:网站建筑|网站建筑公司,你知道我们每天都在更新文章 目的?让百度收录,让访问
  
  如何引流公众号?
  16/1/201810:10:00
  如何引流公众号?这个问题有点宽泛,这里给大家一个答案...
  
  什么是标签页?如何优化标签页?
  27/4/202010:57:11
  什么是标签页?如何优化标签页?标签页是非常常用的,如果用得好,SEO效果很好,但是很多网站标签页使用不当,甚至可能产生负面影响,所以这是一个很好的问题。但是这个问题
   查看全部

  网站调用新浪微博内容(dedecms织梦TAG标签如何显示单个标签共有多少多少
)
  3/3/201801:06:46
  上周,微信公众平台发布公告,要求开发者尽快将现有通过HTTP调用的服务切换为HTTPS调用。平台将于2017年12月30日停止支持HTTP调用,距离微信要求的截止日期还有三个月。开发者如何在三个月内快速将相关服务器升级为HTTPS加密?微信公众号API停止支持HTTP调用。微信公告正文:为保证数据传输安全,提高业务安全性,公众平台将不再支持HTTP调用。避免阴影
  
  一篇关于标签编写标准的文章文章
  12/9/200722:02:00
  Tag 是英文标签的中文翻译,也叫“自由分类”和“焦点分类”。 TAG的分类功能,标签确实对用户体验有很好的享受,可以快速找到相关的文章和信息。
  
  dedecms织梦TAG标签如何显示单个标签中有多少文章文章
  15/9/202015:02:18
  搭建网站服务器文章主要介绍dedecms织梦TAG标签如何显示单个标签有多少文章文章,有一定参考作用物超所值,有需要的朋友可以参考下。希望大家看完
  
  教你写一个愿意分享的公众号文章
  24/9/201514:28:00
  很多企业或微商在运营微信公众号时最常用的方法之一就是写文章,通过文章吸引用户注意力,使用文章来吸引用户积极转发和传播,但是如何写一篇文章的文章,让它愿意在公众号中分享呢?有人说,开通公众号运营首先要做的就是增加粉丝数量。错了,这是第一个目标,但是提高粉丝质量也很重要,否则会有粉丝
  
  WordPress博客小部件实现调用其他网站文章
  的方法
  8/12/201022:09:00
  一些使用 WordPress 的博主有时可能想在他们的 WordPress 博客中调用其他 WordPress 博客或其他 网站文章。通常博主首先想到的就是使用插件来实现这种传输。事实上,您不需要使用插件。 WordPress 博客的后端集成了提要调用。您可以拨打其他网站文章。
  
  如何快速原创有卷的文章文章
  微信公众号
  29/4/201511:01:00
  微信公众号越来越规范,腾讯官方也对原创文章有一些特殊的处理,比如文章原创保护和赞赏功能, 文章 评论等,很大程度上给了原创的作者更多的好处。
  
  如何用产品思维操作微信公众号?
  17/11/201511:01:00
  [文章总结]我觉得微信公众号的运营也需要产品思维。如何评价一个公众号是否“有吸引力”?我个人认为最有说服力的标准应该是活跃用户的数量和比例。说说我运营的公众号,名字
  
  公众号群发文章支持添加小程序
  22/4/201709:43:00
  微信官方平台发布消息:为方便用户在阅读文章时使用微信公众号提供的服务,公众号群发文章支持添加小程序卡片。
  
  网站建筑公司如何使用文章排水
  27/12/202112:16:35
  网站如何使用建筑公司文章排水来源:尚品中国|类型:网站建筑|网站建筑公司,你知道我们每天都在更新文章 目的?让百度收录,让访问
  
  如何引流公众号?
  16/1/201810:10:00
  如何引流公众号?这个问题有点宽泛,这里给大家一个答案...
  
  什么是标签页?如何优化标签页?
  27/4/202010:57:11
  什么是标签页?如何优化标签页?标签页是非常常用的,如果用得好,SEO效果很好,但是很多网站标签页使用不当,甚至可能产生负面影响,所以这是一个很好的问题。但是这个问题
  

网站调用新浪微博内容(PHP中定义6服务端回调操作封装与微博开放平台通信获取用户AccessToken)

网站优化优采云 发表了文章 • 0 个评论 • 59 次浏览 • 2021-12-26 04:03 • 来自相关话题

  网站调用新浪微博内容(PHP中定义6服务端回调操作封装与微博开放平台通信获取用户AccessToken)
  接下来介绍一下基本结构:
  1 核心数据操作类
  这个类在Dao.class.php文件中,是插件的核心,负责从服务器获取数据
  /**
*
* 用户数据获取类
* @author 夏天
* @date 2015年6月28日
* @site http://www.xtwind.com
*
*/
class Dao{
/**
* 微博RPC操作对象
*/
private $client;
/**
* 用户标识
*/
private $mark;
/**
* 构造函数设置用户标识
*/
function __construct($state);
/**
* 返回用户标识
*/
public function getMark();

/**
* 启用插件
* @return 成功返回true,失败返回认证地址
*/
public function run();
/**
* 获取授权情况
* @return string 返回过期时间,未登录或者过期返回false
*/
public function getAuthOver();
/**
* 删除授权
* @return boolean
*/
public function delAuth();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 获取用户微博列表
* @return array
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl=null);
/**
* 删除微博
* @param int 微博ID
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论过
* @param int 微博ID
* @param string 评论内容
* @return array 评论相关数组
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的内容
*/
public function forwardWeibo($id,$text=null);
}
  2 插件实体类
  该类是插件的实体,定义在Plugins.class.php中,负责调用Dao类实现各种功能,包括输入输出、用户配置、授权管理
  /**
* 插件实体类
* @Author:Summer
* @data: 2015-06-28
* @site: http://www.xtwind.com
*/
class Plugins{
/**
* 数据获取类对象
*/
private $dao;
/**
* 插件显示别名
*/
private $slug = 'weibo-wall';
/**
* 插件页url
*/
private $plugUrl ;
/*
* 插件构造
* @param 用户数据操作类
*/
public function __construct(Dao $obj);
/**
* 启用插件,注册钩子,调用用户函数,删除授权,发表微博
* @param array 插件设置选项关联数组,key必须为对应的操作方法,该数组中的键会被注册为wordpress相应钩子
* @param array 需要过滤的动作,该数组中键不会被注册为钩子,但是会作为方法被调用,值为方法的参数
*/
public function run($arr1=null,$arr2=null);
/**
* 插件主页显示
*/
public function display_function();
/**
* 新文章同步发布微博
* @param int 文章ID
*/
public function publish_post($postID);
/**
* 删除文章同步删除微博
* @param int 文章ID
*/
public function before_delete_post($postID);
/**
* 收到评论同步到微博评论
* @param id 评论id
*/
public function comment_post($commentID);
/**
* 关注作者
*/
public function follow_author($userid);
/**
* 用户微博数据获取
*/
public function weiboOuput( $atts=null, $content = null );
/**
* 数据页面输出
*/
public function showWeibo();
/**
* 图片URL处理
* @param string
*/
private function getOriginalUrl($url);
/**
* 时间转换
* @param string
*/
private function Sec2Time($time);
/**
* 插件设置key获取
* @param string 需要设置的key
*/
private function setting_key($key,$func=false);
/**
* 插件设置value获取
* @param string 需要获取的value
*/
private function get_setting($key,$func=false);
/**
* 插件设置删除
*/
private function del_setting();
/**
* 提示信息
* @param string
*/
private function noticeMsg($msg);
}
  3 服务器认证操作
  该接口定义了用户认证所需的所有操作,包括获取授权、删除授权、查看授权等,定义在AuthDao.php
  /**
* 认证操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface AuthDao{
/**
* 设置用户AccessToken
* @return boolean
*/
public function setAccessToken();
/**
* 获取用户AccessToken
* @return String
*/
public function getAccessToken();
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  4 服务器端微博操作
  该接口定义了所有与用户微博操作相关的方法,包括发布微博、阅读微博、阅读信息、删除微博等,定义在 WeiboDao.php
  /**
* 微博操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface WeiboDao {
/**
* 获取用户微博信息列表
* @param int 获取数量
* @param int 类型过滤 0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。
* @return String
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return Array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl);
/**
* 删除微博
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论
* @param integer 微博ID
* @param string 评论内容
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的信息
*/
public function forwardWeibo($id,$text=null);
}
  5 服务器端数据提供接口
  该接口负责向客户端提供数据,以及客户端需要的一些操作,继承自微博操作接口,在APIDao.php中定义
  /**
* 对外提供服务类接口,继承于微博操作接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface DaoAPI extends WeiboDao{
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  6 服务器回调操作
  这种封装在获取用户的AccessToken后与微博开放平台通信获取回调操作
  class Callback {
/**
* 微博认证类对象
*/
private $authObj;
/**
* 构造函数
* @param AuthDaoImpl 微博认证对象
*/
public function __construct(AuthDaoImpl $obj);
/**
* 认证回调操作,保存AccessToken
* @return boolean
*/
public function callback();
}
  7 服务器应用入口
  入口主要是分发回调请求和创建RPC实例
  if($_GET['code']){
$keys = array(
'code' => $_GET['code'],
'redirect_uri' => APP_CALLBACK
);
$back = new Callback(new AuthDaoImpl($_GET['state'],$keys));
if($back->callback()){
header('Location: '.$_GET['state'].'/wp-admin/options-general.php?page=weibo-wall');
}
exit;
}
if($_GET['user']){
$server = new Yar_Server(new API($_GET['user']));
try{
$server->handle();
}catch(Exception $e){
echo "感谢您使用微博墙!";
}
}
  7 客户端应用入口
  此条目实例化插件实体类并启用插件
  $plu = new Plugins(new Dao(get_bloginfo( 'url' )));
$plu -> run(get_option('weibo_wall'),get_option('weibo_func'));
  8 总结
  整个流程是这样的,业务逻辑很简单,代码也很容易理解。在使用的过程中,我发现Yar真的很简单实用,而且是可以并行的。不过这里没有体现出来,可以做一些优化。插件的客户端依赖于Yar框架,是基于C语言开发的扩展。但是如果你没有框架扩展也没关系。我们已经给出了 Yar 的纯 PHP 实现。不用注意就可以使用,但还是推荐大家使用Yar。
  插件在设计时只提供了几个功能,但是有些人需要其他功能,我该怎么办?这方面我们也考虑过,所以在设计的时候插件的扩展性很好,但是需要有一定的PHP编程技巧。
  如何扩展他的功能?
  1.联系作者,告诉你你需要的功能
  2.作者开发了相应的数据API
  3.你在Dao.class.php本地调用API
  4.在Plugins.class.php中获取数据并执行相应的业务逻辑 查看全部

  网站调用新浪微博内容(PHP中定义6服务端回调操作封装与微博开放平台通信获取用户AccessToken)
  接下来介绍一下基本结构:
  1 核心数据操作类
  这个类在Dao.class.php文件中,是插件的核心,负责从服务器获取数据
  /**
*
* 用户数据获取类
* @author 夏天
* @date 2015年6月28日
* @site http://www.xtwind.com
*
*/
class Dao{
/**
* 微博RPC操作对象
*/
private $client;
/**
* 用户标识
*/
private $mark;
/**
* 构造函数设置用户标识
*/
function __construct($state);
/**
* 返回用户标识
*/
public function getMark();

/**
* 启用插件
* @return 成功返回true,失败返回认证地址
*/
public function run();
/**
* 获取授权情况
* @return string 返回过期时间,未登录或者过期返回false
*/
public function getAuthOver();
/**
* 删除授权
* @return boolean
*/
public function delAuth();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 获取用户微博列表
* @return array
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl=null);
/**
* 删除微博
* @param int 微博ID
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论过
* @param int 微博ID
* @param string 评论内容
* @return array 评论相关数组
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的内容
*/
public function forwardWeibo($id,$text=null);
}
  2 插件实体类
  该类是插件的实体,定义在Plugins.class.php中,负责调用Dao类实现各种功能,包括输入输出、用户配置、授权管理
  /**
* 插件实体类
* @Author:Summer
* @data: 2015-06-28
* @site: http://www.xtwind.com
*/
class Plugins{
/**
* 数据获取类对象
*/
private $dao;
/**
* 插件显示别名
*/
private $slug = 'weibo-wall';
/**
* 插件页url
*/
private $plugUrl ;
/*
* 插件构造
* @param 用户数据操作类
*/
public function __construct(Dao $obj);
/**
* 启用插件,注册钩子,调用用户函数,删除授权,发表微博
* @param array 插件设置选项关联数组,key必须为对应的操作方法,该数组中的键会被注册为wordpress相应钩子
* @param array 需要过滤的动作,该数组中键不会被注册为钩子,但是会作为方法被调用,值为方法的参数
*/
public function run($arr1=null,$arr2=null);
/**
* 插件主页显示
*/
public function display_function();
/**
* 新文章同步发布微博
* @param int 文章ID
*/
public function publish_post($postID);
/**
* 删除文章同步删除微博
* @param int 文章ID
*/
public function before_delete_post($postID);
/**
* 收到评论同步到微博评论
* @param id 评论id
*/
public function comment_post($commentID);
/**
* 关注作者
*/
public function follow_author($userid);
/**
* 用户微博数据获取
*/
public function weiboOuput( $atts=null, $content = null );
/**
* 数据页面输出
*/
public function showWeibo();
/**
* 图片URL处理
* @param string
*/
private function getOriginalUrl($url);
/**
* 时间转换
* @param string
*/
private function Sec2Time($time);
/**
* 插件设置key获取
* @param string 需要设置的key
*/
private function setting_key($key,$func=false);
/**
* 插件设置value获取
* @param string 需要获取的value
*/
private function get_setting($key,$func=false);
/**
* 插件设置删除
*/
private function del_setting();
/**
* 提示信息
* @param string
*/
private function noticeMsg($msg);
}
  3 服务器认证操作
  该接口定义了用户认证所需的所有操作,包括获取授权、删除授权、查看授权等,定义在AuthDao.php
  /**
* 认证操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface AuthDao{
/**
* 设置用户AccessToken
* @return boolean
*/
public function setAccessToken();
/**
* 获取用户AccessToken
* @return String
*/
public function getAccessToken();
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  4 服务器端微博操作
  该接口定义了所有与用户微博操作相关的方法,包括发布微博、阅读微博、阅读信息、删除微博等,定义在 WeiboDao.php
  /**
* 微博操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface WeiboDao {
/**
* 获取用户微博信息列表
* @param int 获取数量
* @param int 类型过滤 0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。
* @return String
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return Array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl);
/**
* 删除微博
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论
* @param integer 微博ID
* @param string 评论内容
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的信息
*/
public function forwardWeibo($id,$text=null);
}
  5 服务器端数据提供接口
  该接口负责向客户端提供数据,以及客户端需要的一些操作,继承自微博操作接口,在APIDao.php中定义
  /**
* 对外提供服务类接口,继承于微博操作接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface DaoAPI extends WeiboDao{
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  6 服务器回调操作
  这种封装在获取用户的AccessToken后与微博开放平台通信获取回调操作
  class Callback {
/**
* 微博认证类对象
*/
private $authObj;
/**
* 构造函数
* @param AuthDaoImpl 微博认证对象
*/
public function __construct(AuthDaoImpl $obj);
/**
* 认证回调操作,保存AccessToken
* @return boolean
*/
public function callback();
}
  7 服务器应用入口
  入口主要是分发回调请求和创建RPC实例
  if($_GET['code']){
$keys = array(
'code' => $_GET['code'],
'redirect_uri' => APP_CALLBACK
);
$back = new Callback(new AuthDaoImpl($_GET['state'],$keys));
if($back->callback()){
header('Location: '.$_GET['state'].'/wp-admin/options-general.php?page=weibo-wall');
}
exit;
}
if($_GET['user']){
$server = new Yar_Server(new API($_GET['user']));
try{
$server->handle();
}catch(Exception $e){
echo "感谢您使用微博墙!";
}
}
  7 客户端应用入口
  此条目实例化插件实体类并启用插件
  $plu = new Plugins(new Dao(get_bloginfo( 'url' )));
$plu -> run(get_option('weibo_wall'),get_option('weibo_func'));
  8 总结
  整个流程是这样的,业务逻辑很简单,代码也很容易理解。在使用的过程中,我发现Yar真的很简单实用,而且是可以并行的。不过这里没有体现出来,可以做一些优化。插件的客户端依赖于Yar框架,是基于C语言开发的扩展。但是如果你没有框架扩展也没关系。我们已经给出了 Yar 的纯 PHP 实现。不用注意就可以使用,但还是推荐大家使用Yar。
  插件在设计时只提供了几个功能,但是有些人需要其他功能,我该怎么办?这方面我们也考虑过,所以在设计的时候插件的扩展性很好,但是需要有一定的PHP编程技巧。
  如何扩展他的功能?
  1.联系作者,告诉你你需要的功能
  2.作者开发了相应的数据API
  3.你在Dao.class.php本地调用API
  4.在Plugins.class.php中获取数据并执行相应的业务逻辑

网站调用新浪微博内容(访问,用自己的新浪微博登录以后,先点击文档)

网站优化优采云 发表了文章 • 0 个评论 • 56 次浏览 • 2021-12-24 14:11 • 来自相关话题

  网站调用新浪微博内容(访问,用自己的新浪微博登录以后,先点击文档)
  (注:这是我个人用户写的例子,如果是企业用户,会略有不同)
  ①:首先要确保你有一个新浪微博账号。如果您没有,请注册新浪微博。注册成功后可以直接访问或登录新浪微博,点击上面的申请,然后点击蓝色区域(微博开发平台,我也想做开发者)
  ②:访问,用自己的新浪微博登录后,先点击文档,看文档下方的新手指南,看懂的话选择管理中心。
  ③:选择你要开发的类型是应用还是网站。
  ④:应用分为这几种。这是我目前经营的情况。新浪未来有可能会增加类型。总之,选择你要开发的类型
  ⑤:现在以站点中的应用为例。一开始,我们开发了一个招聘应用程序。上线后可在应用内搜索。
  现在我填写一些测试信息,如图:
  然后点击确定,应用程序就创建好了
  ⑥:创建后会跳转到
  在这里,其实我们主要是拿到了这个App Key和App Secret,后续的开发基本都是用这个key和Secret来调整界面的。
  ⑦:
  红框提示信息必须一步一步完成。这需要填写大量的开发者身份认证信息。
  ⑧:因为上面红框的限制,我们就拿其他现成的例子来说明和招募申请吧。进入各个应用的管理界面,点击应用信息,会出现基本信息、高级信息和测试账号
  基本信息:它允许您改进您的应用程序的某些内容,上传图片,简介等。
  高级信息:需要填写授权回调页面和取消授权回调页面。此部分主要用于授权开发,方便日后授权
  测试账号:本应用上线前,只允许测试15个微博账号,即需要手动添加一些其他账号进行测试,点击编辑,会出现添加微博账号的界面。您只能通过微博登录。您可以通过微博账号的显示名称查找和添加。例如:我以我的账户为例,将我的账户添加为测试账户,点击添加,稍后保存。
  ⑨:点击文档,访问下面的OAuth2.0授权认证,仔细阅读里面的信息,因为授权特别麻烦,仔细想想,动动脑子
  然后选择OAuth2.0 相关资源。我自己做的是PHP开发,所以选择了PHP版本的SDK。
  点击之后,就是之前废弃的SDK DEMO,一直没有更新。新地址是,下载最新的DEMO,里面有对应的更新界面。
  注意:这里的DEMO只是一个测试示例。您可以模仿他们写的内容并将其放在您自己的服务器中。其实所有调用的接口都封装在核心类 saetv2.ex.class.php 文件中间。
  下图红色部分为下载的压缩包,文件列表为压缩包内的文件。
  下图中的config.php文件就是配置
  WB_AKEY和WB_SKEY是在创建应用或网站时生成的,如下图
  WB_CALLBACK_URL:是第八条提到的高级信息中的授权回调地址。
  配置完成后,放到服务器上,就OK了。
  然后可以参考DEMO中的例子进行应用开发。调用的一些接口会写在 saetv2.ex.class.php 文件中。可以参考文档下的API文档接口进行开发。
  注意:很多高级接口无法调用。您需要提交审核,然后申请许可。这个 URL 是接口错误代码。说明:如果有错误,可以查看返回的错误号,找到对应的问题,然后解决。不清楚的可以查看问答系统( 查看全部

  网站调用新浪微博内容(访问,用自己的新浪微博登录以后,先点击文档)
  (注:这是我个人用户写的例子,如果是企业用户,会略有不同)
  ①:首先要确保你有一个新浪微博账号。如果您没有,请注册新浪微博。注册成功后可以直接访问或登录新浪微博,点击上面的申请,然后点击蓝色区域(微博开发平台,我也想做开发者)
  ②:访问,用自己的新浪微博登录后,先点击文档,看文档下方的新手指南,看懂的话选择管理中心。
  ③:选择你要开发的类型是应用还是网站。
  ④:应用分为这几种。这是我目前经营的情况。新浪未来有可能会增加类型。总之,选择你要开发的类型
  ⑤:现在以站点中的应用为例。一开始,我们开发了一个招聘应用程序。上线后可在应用内搜索。
  现在我填写一些测试信息,如图:
  然后点击确定,应用程序就创建好了
  ⑥:创建后会跳转到
  在这里,其实我们主要是拿到了这个App Key和App Secret,后续的开发基本都是用这个key和Secret来调整界面的。
  ⑦:
  红框提示信息必须一步一步完成。这需要填写大量的开发者身份认证信息。
  ⑧:因为上面红框的限制,我们就拿其他现成的例子来说明和招募申请吧。进入各个应用的管理界面,点击应用信息,会出现基本信息、高级信息和测试账号
  基本信息:它允许您改进您的应用程序的某些内容,上传图片,简介等。
  高级信息:需要填写授权回调页面和取消授权回调页面。此部分主要用于授权开发,方便日后授权
  测试账号:本应用上线前,只允许测试15个微博账号,即需要手动添加一些其他账号进行测试,点击编辑,会出现添加微博账号的界面。您只能通过微博登录。您可以通过微博账号的显示名称查找和添加。例如:我以我的账户为例,将我的账户添加为测试账户,点击添加,稍后保存。
  ⑨:点击文档,访问下面的OAuth2.0授权认证,仔细阅读里面的信息,因为授权特别麻烦,仔细想想,动动脑子
  然后选择OAuth2.0 相关资源。我自己做的是PHP开发,所以选择了PHP版本的SDK。
  点击之后,就是之前废弃的SDK DEMO,一直没有更新。新地址是,下载最新的DEMO,里面有对应的更新界面。
  注意:这里的DEMO只是一个测试示例。您可以模仿他们写的内容并将其放在您自己的服务器中。其实所有调用的接口都封装在核心类 saetv2.ex.class.php 文件中间。
  下图红色部分为下载的压缩包,文件列表为压缩包内的文件。
  下图中的config.php文件就是配置
  WB_AKEY和WB_SKEY是在创建应用或网站时生成的,如下图
  WB_CALLBACK_URL:是第八条提到的高级信息中的授权回调地址。
  配置完成后,放到服务器上,就OK了。
  然后可以参考DEMO中的例子进行应用开发。调用的一些接口会写在 saetv2.ex.class.php 文件中。可以参考文档下的API文档接口进行开发。
  注意:很多高级接口无法调用。您需要提交审核,然后申请许可。这个 URL 是接口错误代码。说明:如果有错误,可以查看返回的错误号,找到对应的问题,然后解决。不清楚的可以查看问答系统(

网站调用新浪微博内容(新浪微博api接口推荐活动:更多优惠gt(组图))

网站优化优采云 发表了文章 • 0 个评论 • 40 次浏览 • 2021-12-23 18:11 • 来自相关话题

  网站调用新浪微博内容(新浪微博api接口推荐活动:更多优惠gt(组图))
  阿里云>云栖社区>主题地图>D>调用新浪微博API接口
  
  推荐活动:
  更多优惠>
  当前话题:调用新浪微博api接口加入采集
  相关话题:
  调用新浪微博api接口相关博客查看更多博客
  如何创建新浪微博应用并获取访问令牌
  
  
  作者:jerrywangsap1566 人浏览评论:03年前
  前提是你必须先有一个新浪微博账号。打开网页%E9%A6%96%E9%A1%B5 点击新手指南->开发者页面:会自动跳转到页面:,点击
  阅读全文
  关于访问新浪微博第三方登录
  
  
  作者:小天科技 945人浏览评论:04年前
  最近在联合第三方平台做一个登录访问,第一时间联系开放平台,在这里做个笔记。开发前的准备工作如下: 1、注册新浪微博2、访问新浪微博开发平台,如果是企业,申请企业接入并提交相关资料审核;如果是个人发展
  阅读全文
  Win10人网应用将关闭与新浪微博关联
  
  
  作者:青山无名 904人浏览评论:04年前
  从Win8时代开始,系统内置的通讯录应用可以关联​​新浪微博,不过现在好像不再支持了。据悉,微软通过电子邮件向用户表示,人民网应用将不再支持与新浪微博账号的关联。原因是新浪微博原有的API接口已经调整,包括人民网在内的其他相关应用已经无法调用。界面。这意味着
  阅读全文
  使用新浪微博API的搜索界面,让微博排名靠前
  
  
  作者:郑云1802人浏览评论:05年前
  郑云20100929申请入口:简单介绍一下我们的榜单和新浪自家的热门转发榜单的区别:微博转发会忽略名人推文,更关注草根推文,更关注社会民生推文,屏蔽非营养推文. 瑞微博排名将汇总以新浪微博为首的国内主要微博网站
  阅读全文
  新浪微博开发(上)
  
  
  作者:xumaojun1002 浏览评论人数:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  新浪微博开发(上)
  
  
  作者:nothingfinal1071 人浏览评论:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  开放平台:iOS版新浪微博
  
  
  作者:于书义 845人浏览评论:09年前
  简介:新浪微博几乎开放了所有平台数据的所有API接口。因此,很多优秀的第三方微博客户端在功能上都是非常全面的。通过SNS分享和推广的方式已经在App世界中使用了。它很常见,甚至随处可见。本文主要介绍App与新浪微博的关系。参考:1.开发
  阅读全文
  新浪微博 Python 客户端接口 OAuth2
  
  
  作者:方贝工作室 745人浏览评论:09年前
  关键字:Python Oauth2 微博新浪微博#!/usr/bin/env python # -*- 编码:utf-8 -*- __version__ ='1.04' __author__ ='廖雪飞
  阅读全文
  调用新浪微博api接口相关问答提问
  iOS开发调用新浪微博界面问题
  
  
  作者:杨东方 818人浏览评论:15年前
  小弟正在做一个模块,调用新浪微博api,需要点击一个按钮才能进入我们公司的微博首页。用户可以与公司的微博进行互动,如发帖回复、转发等,这能实现吗?如果是这样,我该怎么办?以及调用新浪微博API时应该添加哪些新浪提供的类?参考文档上没有说明
  阅读全文 查看全部

  网站调用新浪微博内容(新浪微博api接口推荐活动:更多优惠gt(组图))
  阿里云>云栖社区>主题地图>D>调用新浪微博API接口
  
  推荐活动:
  更多优惠>
  当前话题:调用新浪微博api接口加入采集
  相关话题:
  调用新浪微博api接口相关博客查看更多博客
  如何创建新浪微博应用并获取访问令牌
  
  
  作者:jerrywangsap1566 人浏览评论:03年前
  前提是你必须先有一个新浪微博账号。打开网页%E9%A6%96%E9%A1%B5 点击新手指南->开发者页面:会自动跳转到页面:,点击
  阅读全文
  关于访问新浪微博第三方登录
  
  
  作者:小天科技 945人浏览评论:04年前
  最近在联合第三方平台做一个登录访问,第一时间联系开放平台,在这里做个笔记。开发前的准备工作如下: 1、注册新浪微博2、访问新浪微博开发平台,如果是企业,申请企业接入并提交相关资料审核;如果是个人发展
  阅读全文
  Win10人网应用将关闭与新浪微博关联
  
  
  作者:青山无名 904人浏览评论:04年前
  从Win8时代开始,系统内置的通讯录应用可以关联​​新浪微博,不过现在好像不再支持了。据悉,微软通过电子邮件向用户表示,人民网应用将不再支持与新浪微博账号的关联。原因是新浪微博原有的API接口已经调整,包括人民网在内的其他相关应用已经无法调用。界面。这意味着
  阅读全文
  使用新浪微博API的搜索界面,让微博排名靠前
  
  
  作者:郑云1802人浏览评论:05年前
  郑云20100929申请入口:简单介绍一下我们的榜单和新浪自家的热门转发榜单的区别:微博转发会忽略名人推文,更关注草根推文,更关注社会民生推文,屏蔽非营养推文. 瑞微博排名将汇总以新浪微博为首的国内主要微博网站
  阅读全文
  新浪微博开发(上)
  
  
  作者:xumaojun1002 浏览评论人数:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  新浪微博开发(上)
  
  
  作者:nothingfinal1071 人浏览评论:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  开放平台:iOS版新浪微博
  
  
  作者:于书义 845人浏览评论:09年前
  简介:新浪微博几乎开放了所有平台数据的所有API接口。因此,很多优秀的第三方微博客户端在功能上都是非常全面的。通过SNS分享和推广的方式已经在App世界中使用了。它很常见,甚至随处可见。本文主要介绍App与新浪微博的关系。参考:1.开发
  阅读全文
  新浪微博 Python 客户端接口 OAuth2
  
  
  作者:方贝工作室 745人浏览评论:09年前
  关键字:Python Oauth2 微博新浪微博#!/usr/bin/env python # -*- 编码:utf-8 -*- __version__ ='1.04' __author__ ='廖雪飞
  阅读全文
  调用新浪微博api接口相关问答提问
  iOS开发调用新浪微博界面问题
  
  
  作者:杨东方 818人浏览评论:15年前
  小弟正在做一个模块,调用新浪微博api,需要点击一个按钮才能进入我们公司的微博首页。用户可以与公司的微博进行互动,如发帖回复、转发等,这能实现吗?如果是这样,我该怎么办?以及调用新浪微博API时应该添加哪些新浪提供的类?参考文档上没有说明
  阅读全文

网站调用新浪微博内容(国家网络信息办公室投诉反馈平台:京东新闻分享被篡改)

网站优化优采云 发表了文章 • 0 个评论 • 56 次浏览 • 2021-12-23 06:00 • 来自相关话题

  网站调用新浪微博内容(国家网络信息办公室投诉反馈平台:京东新闻分享被篡改)
  网站调用新浪微博内容分享工具导致的被篡改。请访问国家网络信息办公室投诉反馈平台:国家网络信息办公室建议您自行联系新浪微博客服帮助解决此问题。相关工作正在进行中,我们将尽快与您取得联系。
  1.感谢您对京东新闻微博的转发行为!2.帮我们看看京东客服会不会处理这件事情。
  京东我买过以后邮坏了,售后巨坑,而且不改错别字。垃圾京东。
  京东新闻分享服务,
  写了两条新闻微博,同一家网站,不同的新闻机构,经过多次点击转发,投诉,不同网站同样未回复,
  我找不到京东新闻分享了在哪里点我不会,但是我可以点击打开,在网站首页就可以看到。但是我想要的转发完成条件是新浪微博能直接发送,然后指定于你相关的转发,而不是在同一家网站选中。
  看你该网站到底是通过哪种方式推广,很多不正规的小网站,也是通过发布广告的形式,但是,正规的网站都是采用广告,非广告的形式推广产品,
  京东新闻分享导致被篡改,建议联系客服反馈。
  京东新闻是经过投诉的,可能是网站经营方的意识差不专业。京东这个分享是有问题的,京东新闻分享是靠优惠券的,他们的优惠券肯定没有钱抢到手快,有钱可以在别的网站分享,干嘛这个钱先在我京东产品上浪费?不知道京东自己有钱可以做关键词新闻,客服却一直做不到实时回复,不解决事情?我只是想先处理一下京东产品分享后再拿到我该拿到的的优惠券。却一直这样对待客户,希望京东管管京东产品的分享,安全可靠有效率的分享。 查看全部

  网站调用新浪微博内容(国家网络信息办公室投诉反馈平台:京东新闻分享被篡改)
  网站调用新浪微博内容分享工具导致的被篡改。请访问国家网络信息办公室投诉反馈平台:国家网络信息办公室建议您自行联系新浪微博客服帮助解决此问题。相关工作正在进行中,我们将尽快与您取得联系。
  1.感谢您对京东新闻微博的转发行为!2.帮我们看看京东客服会不会处理这件事情。
  京东我买过以后邮坏了,售后巨坑,而且不改错别字。垃圾京东。
  京东新闻分享服务,
  写了两条新闻微博,同一家网站,不同的新闻机构,经过多次点击转发,投诉,不同网站同样未回复,
  我找不到京东新闻分享了在哪里点我不会,但是我可以点击打开,在网站首页就可以看到。但是我想要的转发完成条件是新浪微博能直接发送,然后指定于你相关的转发,而不是在同一家网站选中。
  看你该网站到底是通过哪种方式推广,很多不正规的小网站,也是通过发布广告的形式,但是,正规的网站都是采用广告,非广告的形式推广产品,
  京东新闻分享导致被篡改,建议联系客服反馈。
  京东新闻是经过投诉的,可能是网站经营方的意识差不专业。京东这个分享是有问题的,京东新闻分享是靠优惠券的,他们的优惠券肯定没有钱抢到手快,有钱可以在别的网站分享,干嘛这个钱先在我京东产品上浪费?不知道京东自己有钱可以做关键词新闻,客服却一直做不到实时回复,不解决事情?我只是想先处理一下京东产品分享后再拿到我该拿到的的优惠券。却一直这样对待客户,希望京东管管京东产品的分享,安全可靠有效率的分享。

网站调用新浪微博内容(微博客,你和转载者都会承担侵权责任吗?)

网站优化优采云 发表了文章 • 0 个评论 • 58 次浏览 • 2021-12-22 07:01 • 来自相关话题

  网站调用新浪微博内容(微博客,你和转载者都会承担侵权责任吗?)
  网站调用新浪微博内容,只要不转载进自己网站,都不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。即便是调用新浪微博内容,只要不转载进自己网站,也是不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。
  不会。微博客只是提供一个平台供其他人传播你的原创图片,只要你的这些原创图片合法,不属于微博客擅自上传,那就没有问题。
  无限。你自己原创,沒被人自己用就行。
  肯定会啊...最好不要直接使用在大陆境内媒体上发表的图片哦...否则被追责的话就惨了
  已经被新浪认定为恶意侵权了在国内
  新浪的事就是新浪的事,新浪上面无论什么内容,随便在国内公开发表出去都是属于侵权的。其他平台上(除了腾讯微博和腾讯微博首页)如果有你要发布的内容,可以在别的平台上用你要发布的内容重新发表。内容在一定时间内没有重新发布,但是内容确实也不合规可以请求新浪的解释,并且期间会承担相应的侵权责任。
  没有侵权,只有归责权利人理解问题。你发了个微博在你的网站上就可以自己用。别人改了你的网站上的图片但是没改名字(但是这个却是法律明文规定),你的网站就不必承担法律责任。你没收别人钱只说明两件事:1.版权法不保护无所作为的人;2.在未经对方同意的情况下,不能更改对方主体信息,否则对方提出侵权要求,对方可以要求你承担侵权责任。 查看全部

  网站调用新浪微博内容(微博客,你和转载者都会承担侵权责任吗?)
  网站调用新浪微博内容,只要不转载进自己网站,都不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。即便是调用新浪微博内容,只要不转载进自己网站,也是不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。
  不会。微博客只是提供一个平台供其他人传播你的原创图片,只要你的这些原创图片合法,不属于微博客擅自上传,那就没有问题。
  无限。你自己原创,沒被人自己用就行。
  肯定会啊...最好不要直接使用在大陆境内媒体上发表的图片哦...否则被追责的话就惨了
  已经被新浪认定为恶意侵权了在国内
  新浪的事就是新浪的事,新浪上面无论什么内容,随便在国内公开发表出去都是属于侵权的。其他平台上(除了腾讯微博和腾讯微博首页)如果有你要发布的内容,可以在别的平台上用你要发布的内容重新发表。内容在一定时间内没有重新发布,但是内容确实也不合规可以请求新浪的解释,并且期间会承担相应的侵权责任。
  没有侵权,只有归责权利人理解问题。你发了个微博在你的网站上就可以自己用。别人改了你的网站上的图片但是没改名字(但是这个却是法律明文规定),你的网站就不必承担法律责任。你没收别人钱只说明两件事:1.版权法不保护无所作为的人;2.在未经对方同意的情况下,不能更改对方主体信息,否则对方提出侵权要求,对方可以要求你承担侵权责任。

网站调用新浪微博内容(1.配置文件下载SDK.Json和RestSharp两个程序集)

网站优化优采云 发表了文章 • 0 个评论 • 44 次浏览 • 2021-12-21 00:03 • 来自相关话题

  网站调用新浪微博内容(1.配置文件下载SDK.Json和RestSharp两个程序集)
  1. 先下载SDK()。 SDK 依赖于两个程序集,Newtonsoft.Json 和 RestSharp。具体请参考使用RestSharp库消费Restful Service。主要有QzoneContext(QQ登录的上下文数据)和QOpenClient(QQ互联API入口)两个类,其他类主要是模型和配置类。
  2.在配置文件中加入如下内容:
  
   1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  
  3.我这里使用的是MVC模式,后台代码如下:
  
   1 public ActionResult Index()
2 {
3 //this.Session[RETURNURL] = returnUrl;
4 var context = new QzoneContext();
5 string state = Guid.NewGuid().ToString().Replace("-", "");
6 Session["requeststate"] = state;
7 string scope = "get_user_info,add_share,list_album,upload_pic,check_page_fans,add_t,add_pic_t,del_t,get_repost_list,get_info,get_other_info,get_fanslist,get_idolist,add_idol,del_idol,add_one_blog,add_topic,get_tenpay_addr";
8 model.authenticationUrl = context.GetAuthorizationUrl(state, scope);
9
10 return View(model);
11 }
  
  首页如下:
  
  @model dynamic
@{
Layout = null;
}


Index

用户名:<br />
密 码:<br />



~/Images/qq.pngQQ账号登录

  
  测试界面如下:点击实现QQ登录
  
  虽然通过这种方式实现了登录,但只能使用自己开发者的QQ账号登录。如果您想使用任何QQ账号登录,应用程序需要通过TX审核。 . .
  注意:
  如果是本地测试,修改IIS发布的网站端口为80,修改C:\Windows\System32\drivers\etc中的hosts文件,在IIS和对应的域名:
  
  转移: 查看全部

  网站调用新浪微博内容(1.配置文件下载SDK.Json和RestSharp两个程序集)
  1. 先下载SDK()。 SDK 依赖于两个程序集,Newtonsoft.Json 和 RestSharp。具体请参考使用RestSharp库消费Restful Service。主要有QzoneContext(QQ登录的上下文数据)和QOpenClient(QQ互联API入口)两个类,其他类主要是模型和配置类。
  2.在配置文件中加入如下内容:
  
   1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  
  3.我这里使用的是MVC模式,后台代码如下:
  
   1 public ActionResult Index()
2 {
3 //this.Session[RETURNURL] = returnUrl;
4 var context = new QzoneContext();
5 string state = Guid.NewGuid().ToString().Replace("-", "");
6 Session["requeststate"] = state;
7 string scope = "get_user_info,add_share,list_album,upload_pic,check_page_fans,add_t,add_pic_t,del_t,get_repost_list,get_info,get_other_info,get_fanslist,get_idolist,add_idol,del_idol,add_one_blog,add_topic,get_tenpay_addr";
8 model.authenticationUrl = context.GetAuthorizationUrl(state, scope);
9
10 return View(model);
11 }
  
  首页如下:
  
  @model dynamic
@{
Layout = null;
}


Index

用户名:<br />
密 码:<br />



~/Images/qq.pngQQ账号登录

  
  测试界面如下:点击实现QQ登录
  
  虽然通过这种方式实现了登录,但只能使用自己开发者的QQ账号登录。如果您想使用任何QQ账号登录,应用程序需要通过TX审核。 . .
  注意:
  如果是本地测试,修改IIS发布的网站端口为80,修改C:\Windows\System32\drivers\etc中的hosts文件,在IIS和对应的域名:
  
  转移:

网站调用新浪微博内容(新浪微博开放平台API调用和TWITTER接口一样的限定规则)

网站优化优采云 发表了文章 • 0 个评论 • 42 次浏览 • 2021-12-19 06:17 • 来自相关话题

  网站调用新浪微博内容(新浪微博开放平台API调用和TWITTER接口一样的限定规则)
  新浪微博开放平台API调用与TWITTER接口相同,均以小时为单位进行限制和限制。
  他有两个限制原则
  1.用户不按IP限制登录,每小时1000次
  2. 用户以基于用户的限制登录,每小时1000次
  如果应用是用户未登录,则IP被限制。建议登录破解瓶颈,否则不讨论。
  新浪给出了具体限制
  开发者可以通过 rate_limit_status 接口查看调用频率
  rate_limit_status 接口文档
  接口返回如下信息
  数组 ([remaining_hits] =&gt; 999 [hourly_limit]=&gt; 1000 [reset_time_in_seconds] =&gt;2717 [reset_time] =&gt; 12 月 14 日星期二 17:00:00 +0800 2010)
  代表
  剩余数量为999次,
  每小时限制1000次,
  计数器复位的剩余时间为 2717 秒,
  下次重置时间为17:00。
  这样的调用频率对于非授权的小应用来说已经不够用了。最简单的方法是使用多个账号和多个APP_KEY,相当于做一个账号轮询。
  首先,多注册几个微博账号,将它们存储在一个数组中,每次随机调用一个,这样可以轻松使限制达到3000。
  $wb_id = array('|密码','|密码','|密码');
  列表($wb_name,$wb_password)=explode(“|”,$wb_id[array_rand($wb_id)]);
  如果你用同样的方法列出几个APP_KEY并重复组合,那么就会有更多。比如2个APP_KEY,3个账号,上限可以达到6000。
  我个人用了3个APP_KEY,4个账号,每小时1.2万就够了。
  快速注册微博账号的另一种方式
  第一步,
  去gmail注册一个长账号,多长时间?反正越长越好,一个原则信比你想注册的微博账号长
  例如
  第二步,
  使用此账号在新浪注册
  第一次使用
  第二次使用
  第三次使用
  ....
  以此类推,一个邮箱可以注册多个新浪微博。无需来回重新注册邮箱。 查看全部

  网站调用新浪微博内容(新浪微博开放平台API调用和TWITTER接口一样的限定规则)
  新浪微博开放平台API调用与TWITTER接口相同,均以小时为单位进行限制和限制。
  他有两个限制原则
  1.用户不按IP限制登录,每小时1000次
  2. 用户以基于用户的限制登录,每小时1000次
  如果应用是用户未登录,则IP被限制。建议登录破解瓶颈,否则不讨论。
  新浪给出了具体限制
  开发者可以通过 rate_limit_status 接口查看调用频率
  rate_limit_status 接口文档
  接口返回如下信息
  数组 ([remaining_hits] =&gt; 999 [hourly_limit]=&gt; 1000 [reset_time_in_seconds] =&gt;2717 [reset_time] =&gt; 12 月 14 日星期二 17:00:00 +0800 2010)
  代表
  剩余数量为999次,
  每小时限制1000次,
  计数器复位的剩余时间为 2717 秒,
  下次重置时间为17:00。
  这样的调用频率对于非授权的小应用来说已经不够用了。最简单的方法是使用多个账号和多个APP_KEY,相当于做一个账号轮询。
  首先,多注册几个微博账号,将它们存储在一个数组中,每次随机调用一个,这样可以轻松使限制达到3000。
  $wb_id = array('|密码','|密码','|密码');
  列表($wb_name,$wb_password)=explode(“|”,$wb_id[array_rand($wb_id)]);
  如果你用同样的方法列出几个APP_KEY并重复组合,那么就会有更多。比如2个APP_KEY,3个账号,上限可以达到6000。
  我个人用了3个APP_KEY,4个账号,每小时1.2万就够了。
  快速注册微博账号的另一种方式
  第一步,
  去gmail注册一个长账号,多长时间?反正越长越好,一个原则信比你想注册的微博账号长
  例如
  第二步,
  使用此账号在新浪注册
  第一次使用
  第二次使用
  第三次使用
  ....
  以此类推,一个邮箱可以注册多个新浪微博。无需来回重新注册邮箱。

网站调用新浪微博内容(新浪微博的开发api,公示如下公示)

网站优化优采云 发表了文章 • 0 个评论 • 36 次浏览 • 2021-12-19 06:15 • 来自相关话题

  网站调用新浪微博内容(新浪微博的开发api,公示如下公示)
  注:本文代码无效,请勿模仿,其他方法请参考scribe方法
  最近在研究新浪微博的开发api,尝试在一些客户端应用中调用相应的api来发送新浪微博。经过一番尝试,终于成功了。几个关键点和相应的demo发布如下,供大家理解。
  在本文中,我主要演示如何通过用户名/密码连接到新浪微博,然后读取最新的微博信息,最后演示如何发送一个简单的微博,其他可以通过相应的微博api进行处理,有这里没有仔细深入。
  首先要申请开发者授权,也就是要在新浪上申请。直接通过地址:用微博登录后,创建一个应用程序即可。创建应用的目的是获取对应的app Key和app Secret。app key会用到后面的主要API中,方便新浪追踪请求的来源。具体流程请自行google。
  应用完成后,我们将开始我们的api之旅。在本文中,我们没有使用官方的java sdk,因为主要目的是一个简单的演示。如果是应用开发,还是可以下载对应的java sdk应用。查看示例以了解如何拨打电话。
  本文使用httpclient。如果使用maven,可以使用groupId作为commons-httpclient,使用artifactId作为commons-httpclient,将其导入到项目中。其次,为了方便对返回数据的分析,使用了一个JSON组件(fastjson)来解析json字符串。
  获取应用授权,即允许应用访问用户的相应信息(用户名、密码除外)
  由于新浪使用的是auth2.0,所以整个登录过程分为两部分。一部分是登录授权,它允许我们的应用访问指定用户的相应信息。这里的信息不包括用户名和密码。. 在类网页应用中,即通过弹出新浪登录框,用户输入用户名和密码,授权应用使用。新浪通过验证后,会返回到我们的应用所在的主界面。第二部分是获取对应的token,相当于用户会话,以便在后续操作中可以使用这个token进行数据访问。
  申请授权地址为:,完整代码如下:
  
PostMethod postMethod = new PostMethod("https://api.weibo.com/oauth2/authorize");
postMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
postMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //oauth2 回调地址
postMethod.addParameter("response_type", "code");//请求code信息
postMethod.addParameter("action", "submit");//表示授权访问
postMethod.addParameter("userId", "xxxx"); //微博帐号
postMethod.addParameter("passwd", "xxxx"); //帐号密码
client.executeMethod(postMethod);
String url = postMethod.getResponseHeader("location").getValue();//取得重定向的地址信息
/** 以下为获取新浪返回的code信息 */
String params = url.substring(url.lastIndexOf("?") + 1);
Map p = parseQueryString(params);
String code = p.get("code")[0];
//取得code数据
System.out.println("code->" + code);
  获取 access_token
  API参考接口:
  整个代码如下:
  
                PostMethod tokenMethod = new PostMethod("https://api.weibo.com/oauth2/access_token");
tokenMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
tokenMethod.addParameter("client_secret", props.getProperty("client_SERCRET")); //appsecret
tokenMethod.addParameter("grant_type", "authorization_code");
tokenMethod.addParameter("code", code); //上一步骤拿到的code
tokenMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //回调地址
client.executeMethod(tokenMethod);
String result = tokenMethod.getResponseBodyAsString();
JSONObject jsonObject = JSON.parseObject(result);
String access_token = jsonObject.getString("access_token");//获取到的access_token
System.out.println("access_token-->" + access_token);
  获取最新微博信息列表
  API参考接口:
  代码显示如下:
  发送微博消息
  api参考:
  代码显示如下:
  
                PostMethod newMethod = new PostMethod("https://api.weibo.com/2/statuses/update.json");
newMethod.addParameter("access_token", access_token);
newMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8");//解决乱码问题,避免传输中文时微博上显示乱码
newMethod.addParameter("status", "使用java发新浪weibo test234563");
client.executeMethod(newMethod);
result = newMethod.getResponseBodyAsString();
jsonObject = JSON.parseObject(result);
System.out.println("newM->" + jsonObject);
  综上所述
  其实整个过程还是很简单的。最重要的是前两步登录和获取授​​权。这两步就完成了,后面都是json请求,然后传参数,拿到结果,再处理结果的问题。.
  值得注意的是,在获取access_token的第二步中,官方文档中写到可以通过grant_type=password获取token信息,即输入用户名和密码。但是这种方式需要特殊的申请,具体的申请步骤比较复杂,必须经过官方审核,非一般开发者也能做好。所以这里就不用这个了(当然,如果你用这个方法,可以将第一步和第二步合并成一)。 查看全部

  网站调用新浪微博内容(新浪微博的开发api,公示如下公示)
  注:本文代码无效,请勿模仿,其他方法请参考scribe方法
  最近在研究新浪微博的开发api,尝试在一些客户端应用中调用相应的api来发送新浪微博。经过一番尝试,终于成功了。几个关键点和相应的demo发布如下,供大家理解。
  在本文中,我主要演示如何通过用户名/密码连接到新浪微博,然后读取最新的微博信息,最后演示如何发送一个简单的微博,其他可以通过相应的微博api进行处理,有这里没有仔细深入。
  首先要申请开发者授权,也就是要在新浪上申请。直接通过地址:用微博登录后,创建一个应用程序即可。创建应用的目的是获取对应的app Key和app Secret。app key会用到后面的主要API中,方便新浪追踪请求的来源。具体流程请自行google。
  应用完成后,我们将开始我们的api之旅。在本文中,我们没有使用官方的java sdk,因为主要目的是一个简单的演示。如果是应用开发,还是可以下载对应的java sdk应用。查看示例以了解如何拨打电话。
  本文使用httpclient。如果使用maven,可以使用groupId作为commons-httpclient,使用artifactId作为commons-httpclient,将其导入到项目中。其次,为了方便对返回数据的分析,使用了一个JSON组件(fastjson)来解析json字符串。
  获取应用授权,即允许应用访问用户的相应信息(用户名、密码除外)
  由于新浪使用的是auth2.0,所以整个登录过程分为两部分。一部分是登录授权,它允许我们的应用访问指定用户的相应信息。这里的信息不包括用户名和密码。. 在类网页应用中,即通过弹出新浪登录框,用户输入用户名和密码,授权应用使用。新浪通过验证后,会返回到我们的应用所在的主界面。第二部分是获取对应的token,相当于用户会话,以便在后续操作中可以使用这个token进行数据访问。
  申请授权地址为:,完整代码如下:
  
PostMethod postMethod = new PostMethod("https://api.weibo.com/oauth2/authorize";);
postMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
postMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //oauth2 回调地址
postMethod.addParameter("response_type", "code");//请求code信息
postMethod.addParameter("action", "submit");//表示授权访问
postMethod.addParameter("userId", "xxxx"); //微博帐号
postMethod.addParameter("passwd", "xxxx"); //帐号密码
client.executeMethod(postMethod);
String url = postMethod.getResponseHeader("location").getValue();//取得重定向的地址信息
/** 以下为获取新浪返回的code信息 */
String params = url.substring(url.lastIndexOf("?") + 1);
Map p = parseQueryString(params);
String code = p.get("code")[0];
//取得code数据
System.out.println("code->" + code);
  获取 access_token
  API参考接口:
  整个代码如下:
  
                PostMethod tokenMethod = new PostMethod("https://api.weibo.com/oauth2/access_token";);
tokenMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
tokenMethod.addParameter("client_secret", props.getProperty("client_SERCRET")); //appsecret
tokenMethod.addParameter("grant_type", "authorization_code");
tokenMethod.addParameter("code", code); //上一步骤拿到的code
tokenMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //回调地址
client.executeMethod(tokenMethod);
String result = tokenMethod.getResponseBodyAsString();
JSONObject jsonObject = JSON.parseObject(result);
String access_token = jsonObject.getString("access_token");//获取到的access_token
System.out.println("access_token-->" + access_token);
  获取最新微博信息列表
  API参考接口:
  代码显示如下:
  发送微博消息
  api参考:
  代码显示如下:
  
                PostMethod newMethod = new PostMethod("https://api.weibo.com/2/statuses/update.json";);
newMethod.addParameter("access_token", access_token);
newMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8");//解决乱码问题,避免传输中文时微博上显示乱码
newMethod.addParameter("status", "使用java发新浪weibo test234563");
client.executeMethod(newMethod);
result = newMethod.getResponseBodyAsString();
jsonObject = JSON.parseObject(result);
System.out.println("newM->" + jsonObject);
  综上所述
  其实整个过程还是很简单的。最重要的是前两步登录和获取授​​权。这两步就完成了,后面都是json请求,然后传参数,拿到结果,再处理结果的问题。.
  值得注意的是,在获取access_token的第二步中,官方文档中写到可以通过grant_type=password获取token信息,即输入用户名和密码。但是这种方式需要特殊的申请,具体的申请步骤比较复杂,必须经过官方审核,非一般开发者也能做好。所以这里就不用这个了(当然,如果你用这个方法,可以将第一步和第二步合并成一)。

网站调用新浪微博内容(微博登录访问第三方网站,分享内容,同步信息教程)

网站优化优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2021-12-18 14:09 • 来自相关话题

  网站调用新浪微博内容(微博登录访问第三方网站,分享内容,同步信息教程)
  在平时的项目开发过程中,除了注册这个账号网站登录外,还可以调用第三方接口登录网站。这里我们以微博登录为例。微博登录包括身份认证、用户关系和内容传播。允许用户使用微博账号登录访问第三方网站,分享内容,同步信息。
  1、首先需要将需要授权的用户引导到以下地址:
  如果用户同意授权,页面跳转到YOUR_REGISTERED_REDIRECT_URI/?code=CODE:
  2、 接下来我们需要根据上面得到的代码兑换Access Token:
  返回值:
  JSON
  
{
"access_token": "SlAV32hkKG",
"remind_in": 3600,
"expires_in": 3600
}
  3、最后使用获取到的OAuth2.0 Access Token调用API获取用户身份,完成用户登录。
  话不多说,直接上代码:
  为方便起见,我们先将get和post封装到application下的common.php中:
  应用公用文件common.php:
  
function get( $url, $_header = NULL )
{
$curl = curl_init();
//curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, false);
if( stripos($url, 'https://') !==FALSE )
{
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
}
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
if ( $_header != NULL )
{
curl_setopt($curl, CURLOPT_HTTPHEADER, $_header);
}
$ret = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if( intval( $info["http_code"] ) == 200 )
{
return $ret;
}
return false;
}
/*
* post method
*/
function post( $url, $param )
{
$oCurl = curl_init ();
curl_setopt ( $oCurl, CURLOPT_SAFE_UPLOAD, false);
if (stripos ( $url, "https://" ) !== FALSE) {
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYHOST, false );
}

curl_setopt ( $oCurl, CURLOPT_URL, $url );
curl_setopt ( $oCurl, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $oCurl, CURLOPT_POST, true );
curl_setopt ( $oCurl, CURLOPT_POSTFIELDS, $param );
$sContent = curl_exec ( $oCurl );
$aStatus = curl_getinfo ( $oCurl );
curl_close ( $oCurl );
if (intval ( $aStatus ["http_code"] ) == 200) {
return $sContent;
} else {
return false;
}
}
  控制器处理代码 Login.php:
  
class Login extends \think\Controller
{
public function index()
{
$key = "****";
$redirect_uri = "***微博应用安全域名***/?backurl=***项目本地域名***/home/login/webLogin?";
//授权后将页面重定向到本地项目
$redirect_uri = urlencode($redirect_uri);
$wb_url = "https://api.weibo.com/oauth2/authorize?client_id={$key}&response_type=code&redirect_uri={$redirect_uri}";
$this -> assign('wb_url',$wb_url);
return view('login');
}
public function webLogin(){
$key = "*****";
//接收code值
$code = input('get.code');
//换取Access Token: post方式请求 替换参数: client_id, client_secret,redirect_uri, code
$secret = "********";
$redirect_uri = "********";
$url = "https://api.weibo.com/oauth2/a ... id%3D{$key}&client_secret={$secret}&grant_type=authorization_code&redirect_uri={$redirect_uri}&code={$code}";
$token = post($url, array());
$token = json_decode($token, true);
//获取用户信息 : get方法,替换参数: access_token, uid
$url = "https://api.weibo.com/2/users/ ... en%3D{$token['access_token']}&uid={$token['uid']}";
$info = get($url);
if($info){
echo "<p>登录成功";
}
}
}</p>
  模板代码 login.html:
  

微博登录
点击这里进行微博登录
  效果图:
  
  
  
  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持面圈教程。 查看全部

  网站调用新浪微博内容(微博登录访问第三方网站,分享内容,同步信息教程)
  在平时的项目开发过程中,除了注册这个账号网站登录外,还可以调用第三方接口登录网站。这里我们以微博登录为例。微博登录包括身份认证、用户关系和内容传播。允许用户使用微博账号登录访问第三方网站,分享内容,同步信息。
  1、首先需要将需要授权的用户引导到以下地址:
  如果用户同意授权,页面跳转到YOUR_REGISTERED_REDIRECT_URI/?code=CODE:
  2、 接下来我们需要根据上面得到的代码兑换Access Token:
  返回值:
  JSON
  
{
"access_token": "SlAV32hkKG",
"remind_in": 3600,
"expires_in": 3600
}
  3、最后使用获取到的OAuth2.0 Access Token调用API获取用户身份,完成用户登录。
  话不多说,直接上代码:
  为方便起见,我们先将get和post封装到application下的common.php中:
  应用公用文件common.php:
  
function get( $url, $_header = NULL )
{
$curl = curl_init();
//curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, false);
if( stripos($url, 'https://') !==FALSE )
{
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
}
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
if ( $_header != NULL )
{
curl_setopt($curl, CURLOPT_HTTPHEADER, $_header);
}
$ret = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if( intval( $info["http_code"] ) == 200 )
{
return $ret;
}
return false;
}
/*
* post method
*/
function post( $url, $param )
{
$oCurl = curl_init ();
curl_setopt ( $oCurl, CURLOPT_SAFE_UPLOAD, false);
if (stripos ( $url, "https://" ) !== FALSE) {
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYHOST, false );
}

curl_setopt ( $oCurl, CURLOPT_URL, $url );
curl_setopt ( $oCurl, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $oCurl, CURLOPT_POST, true );
curl_setopt ( $oCurl, CURLOPT_POSTFIELDS, $param );
$sContent = curl_exec ( $oCurl );
$aStatus = curl_getinfo ( $oCurl );
curl_close ( $oCurl );
if (intval ( $aStatus ["http_code"] ) == 200) {
return $sContent;
} else {
return false;
}
}
  控制器处理代码 Login.php:
  
class Login extends \think\Controller
{
public function index()
{
$key = "****";
$redirect_uri = "***微博应用安全域名***/?backurl=***项目本地域名***/home/login/webLogin?";
//授权后将页面重定向到本地项目
$redirect_uri = urlencode($redirect_uri);
$wb_url = "https://api.weibo.com/oauth2/authorize?client_id={$key}&response_type=code&redirect_uri={$redirect_uri}";
$this -> assign('wb_url',$wb_url);
return view('login');
}
public function webLogin(){
$key = "*****";
//接收code值
$code = input('get.code');
//换取Access Token: post方式请求 替换参数: client_id, client_secret,redirect_uri, code
$secret = "********";
$redirect_uri = "********";
$url = "https://api.weibo.com/oauth2/a ... id%3D{$key}&client_secret={$secret}&grant_type=authorization_code&redirect_uri={$redirect_uri}&code={$code}";
$token = post($url, array());
$token = json_decode($token, true);
//获取用户信息 : get方法,替换参数: access_token, uid
$url = "https://api.weibo.com/2/users/ ... en%3D{$token['access_token']}&uid={$token['uid']}";
$info = get($url);
if($info){
echo "<p>登录成功";
}
}
}</p>
  模板代码 login.html:
  

微博登录
点击这里进行微博登录
  效果图:
  
  
  
  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持面圈教程。

网站调用新浪微博内容( 7.发布失败提示20017内容重复出现提示未登录 )

网站优化优采云 发表了文章 • 0 个评论 • 54 次浏览 • 2021-12-17 09:04 • 来自相关话题

  网站调用新浪微博内容(
7.发布失败提示20017内容重复出现提示未登录
)
  一、微博发布失败及报错汇总
  1.发布失败,草稿箱提示(-105)
  出现这种情况是因为您在一段时间内频繁发布微博。我们建议您稍后再试。
  2.释放失败提示C-1001
  出现这种情况是因为您的网络环境不正常。建议您先清除微博缓存,更换网络环境,尝试卸载重装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  3.发帖失败提示“对不起,内容收录违反相关法律法规或《微博社区公约》”的信息
  出现这种情况是因为您要发布的内容收录违反相关法律法规或《微博社区公约》的信息。建议您修改一下内容,再次尝试发布。
  4.发帖失败提示20021
  出现这种情况是因为根据相关法律法规不能发布该内容。建议您再次尝试编辑和发布微博。
  5.发帖失败提示3021002未登录
  在这种情况下,建议您先卸载并重新安装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  6. 发布失败提示C-1001、3021001、3021004、3021006等
  如果您的微博收录图片,建议您调整发布图片的大小、像素和格式(大小和像素尽量小,格式最好为jpg)。如果调整后发布失败或者微博没有图片,您可以点击微博发布失败反馈。
  7.发帖失败提示20017重复内容
  出现此提示是因为您在短时间内发布或转发了相同或相似的内容。建议你修改一下副本,过一会再试
  8.发布文章失败提示110082
  出现这种情况是因为发布的微博内容中含有系统识别的受保护词汇,无法发布。建议您调整一下内容再尝试发布
  二、为什么不能编辑我的微博
  以下情况不能编辑微博:
  1、原创 微博已投放广告,此微博博主无法编辑;
  2、原创微博被转发,被转发的博主投放广告,导致原创微博无法编辑;
  3、 微博被别人“帮上头条”。该微博博主无法编辑。
  如果您的微博不存在上述情况,则可能是微博状态异常所致。您可以点击反馈。反馈时,您需要按要求提供相关信息,以便工作人员快速处理您的问题。
  三、如何取消自动续费
  1、 取消支付宝激活方式:取消支付宝免密码支付
  2、如何取消微信支付:点击这里
  3、如何通过Apple Pay取消:点击这里
  4、如何通过短信取消月供:点击这里
  四、为什么进群会提示“此人有广告风险,请仔细查看”?
  当会员申请加入粉丝群/聊天群时,系统会判断其身份。如果判断为经常发布垃圾广告的微博用户,会提示群主或管理员仔细查看群管理页面。
  
  五、个人域名相关问题
  1.个性化域名可以使用符号吗?
  个性化域名支持英文或英文+数字格式,暂不支持其他字符。长度:4-20个字符
  2.个性化域名设置后可以修改或注销吗?
  个性化域名一旦设置,将无法修改或取消,请谨慎选择。
  六、 如何复制网页版的微博链接?
  ① 点击微博发布时间进入微博网页;
  
  ②网页地址栏中的链接为微博链接,选中后右键复制。
   查看全部

  网站调用新浪微博内容(
7.发布失败提示20017内容重复出现提示未登录
)
  一、微博发布失败及报错汇总
  1.发布失败,草稿箱提示(-105)
  出现这种情况是因为您在一段时间内频繁发布微博。我们建议您稍后再试。
  2.释放失败提示C-1001
  出现这种情况是因为您的网络环境不正常。建议您先清除微博缓存,更换网络环境,尝试卸载重装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  3.发帖失败提示“对不起,内容收录违反相关法律法规或《微博社区公约》”的信息
  出现这种情况是因为您要发布的内容收录违反相关法律法规或《微博社区公约》的信息。建议您修改一下内容,再次尝试发布。
  4.发帖失败提示20021
  出现这种情况是因为根据相关法律法规不能发布该内容。建议您再次尝试编辑和发布微博。
  5.发帖失败提示3021002未登录
  在这种情况下,建议您先卸载并重新安装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  6. 发布失败提示C-1001、3021001、3021004、3021006等
  如果您的微博收录图片,建议您调整发布图片的大小、像素和格式(大小和像素尽量小,格式最好为jpg)。如果调整后发布失败或者微博没有图片,您可以点击微博发布失败反馈。
  7.发帖失败提示20017重复内容
  出现此提示是因为您在短时间内发布或转发了相同或相似的内容。建议你修改一下副本,过一会再试
  8.发布文章失败提示110082
  出现这种情况是因为发布的微博内容中含有系统识别的受保护词汇,无法发布。建议您调整一下内容再尝试发布
  二、为什么不能编辑我的微博
  以下情况不能编辑微博:
  1、原创 微博已投放广告,此微博博主无法编辑;
  2、原创微博被转发,被转发的博主投放广告,导致原创微博无法编辑;
  3、 微博被别人“帮上头条”。该微博博主无法编辑。
  如果您的微博不存在上述情况,则可能是微博状态异常所致。您可以点击反馈。反馈时,您需要按要求提供相关信息,以便工作人员快速处理您的问题。
  三、如何取消自动续费
  1、 取消支付宝激活方式:取消支付宝免密码支付
  2、如何取消微信支付:点击这里
  3、如何通过Apple Pay取消:点击这里
  4、如何通过短信取消月供:点击这里
  四、为什么进群会提示“此人有广告风险,请仔细查看”?
  当会员申请加入粉丝群/聊天群时,系统会判断其身份。如果判断为经常发布垃圾广告的微博用户,会提示群主或管理员仔细查看群管理页面。
  
  五、个人域名相关问题
  1.个性化域名可以使用符号吗?
  个性化域名支持英文或英文+数字格式,暂不支持其他字符。长度:4-20个字符
  2.个性化域名设置后可以修改或注销吗?
  个性化域名一旦设置,将无法修改或取消,请谨慎选择。
  六、 如何复制网页版的微博链接?
  ① 点击微博发布时间进入微博网页;
  
  ②网页地址栏中的链接为微博链接,选中后右键复制。
  

网站调用新浪微博内容(id拼接成URL,访问用户微博列表了,怎么办?)

网站优化优采云 发表了文章 • 0 个评论 • 37 次浏览 • 2021-12-16 22:12 • 来自相关话题

  网站调用新浪微博内容(id拼接成URL,访问用户微博列表了,怎么办?)
  由于新浪微博对开发者的严格限制,该界面一直无法获取指定用户的微博列表。无奈之下,写了一天爬虫工具,绕过API限制(无高级接口权限),终于拿到了用户的微博列表,分享过程:
  第一步是模拟登录。新浪的登录比较严格。一次登录需要来自服务器的三个请求(可以用谷歌浏览器网络监控工具查看),并且用户名和密码的加密方式一直在变化,导致很多网络爬虫经常失败。. 我采取的方法是绕过模拟登录,直接在RequestHeaders中添加cookies。我如何获得饼干?只要正常登录,使用监控工具,找到一个界面,如下图,将cookie内容复制到RequestHeaders(请求的每一步都需要添加一个cookie,这是你是否登录的证明)
  
  用户cookie
  第二步调用新浪界面获取用户id,如2264520883
  第三步,将获取到的id拼接成URL访问用户主页,抓取主页内容,截取用户微博主页page_id,如下图
  
  page_id
  第四步,将获取到的page_id拼接成微博首页URL(page_id=prefix user id),#feedtop,抓取网页内容,提取需要的元素。您只需要为每个分页更改 page 参数的值。
  问题是,使用上述方法获取的微博数量仅占总数的1/3。为什么?第一个分页id从1开始,但是第二个分页id从46开始,这是因为微博加载中有两个ajax异步加载,异步加载的内容没有显示在网页上,也就是一共每页有 45 个数据,其中 30 个没有显示,我该怎么办?
  第五步,通过网络监控工具,可以发现微博在异步加载时调用了如下接口
  
  微博界面
  有几个参数需要注意。domain是page_id的前缀,pre_page和page是当前页码,max_id是上一页最小的微博id,end_id是上一页最大的微博id(仔细看结论),count是微博的数量per pagination(固定为15),id为page_id,script_uri也收录page_id,拼接时需要注意,from=page_id前缀,最后一个参数__rnd要靠常识来猜测,是当前时间戳(代码写的太多,对数据太敏感)。
  知道这些参数后,就可以开始爬取了。请注意,页面中有两个异步加载。经测试,已成功获取所有微博数据。
  最后,给自己一个赞。辛苦一天也不容易。同时,非常感谢Chrome浏览器。你的网络监控太棒了! 查看全部

  网站调用新浪微博内容(id拼接成URL,访问用户微博列表了,怎么办?)
  由于新浪微博对开发者的严格限制,该界面一直无法获取指定用户的微博列表。无奈之下,写了一天爬虫工具,绕过API限制(无高级接口权限),终于拿到了用户的微博列表,分享过程:
  第一步是模拟登录。新浪的登录比较严格。一次登录需要来自服务器的三个请求(可以用谷歌浏览器网络监控工具查看),并且用户名和密码的加密方式一直在变化,导致很多网络爬虫经常失败。. 我采取的方法是绕过模拟登录,直接在RequestHeaders中添加cookies。我如何获得饼干?只要正常登录,使用监控工具,找到一个界面,如下图,将cookie内容复制到RequestHeaders(请求的每一步都需要添加一个cookie,这是你是否登录的证明)
  
  用户cookie
  第二步调用新浪界面获取用户id,如2264520883
  第三步,将获取到的id拼接成URL访问用户主页,抓取主页内容,截取用户微博主页page_id,如下图
  
  page_id
  第四步,将获取到的page_id拼接成微博首页URL(page_id=prefix user id),#feedtop,抓取网页内容,提取需要的元素。您只需要为每个分页更改 page 参数的值。
  问题是,使用上述方法获取的微博数量仅占总数的1/3。为什么?第一个分页id从1开始,但是第二个分页id从46开始,这是因为微博加载中有两个ajax异步加载,异步加载的内容没有显示在网页上,也就是一共每页有 45 个数据,其中 30 个没有显示,我该怎么办?
  第五步,通过网络监控工具,可以发现微博在异步加载时调用了如下接口
  
  微博界面
  有几个参数需要注意。domain是page_id的前缀,pre_page和page是当前页码,max_id是上一页最小的微博id,end_id是上一页最大的微博id(仔细看结论),count是微博的数量per pagination(固定为15),id为page_id,script_uri也收录page_id,拼接时需要注意,from=page_id前缀,最后一个参数__rnd要靠常识来猜测,是当前时间戳(代码写的太多,对数据太敏感)。
  知道这些参数后,就可以开始爬取了。请注意,页面中有两个异步加载。经测试,已成功获取所有微博数据。
  最后,给自己一个赞。辛苦一天也不容易。同时,非常感谢Chrome浏览器。你的网络监控太棒了!

网站调用新浪微博内容(新版新浪微博模拟登陆请看:本文后面的解决动态加载的程序)

网站优化优采云 发表了文章 • 0 个评论 • 46 次浏览 • 2021-12-16 22:11 • 来自相关话题

  网站调用新浪微博内容(新版新浪微博模拟登陆请看:本文后面的解决动态加载的程序)
  新版新浪微博模拟登录请看:
  本文后面解决动态加载的程序还是有效的
  再次编辑,出了点问题
  第一个模块是模拟登录新浪微博,创建一个weiboLogin.py文件,输入如下代码:
  #! /usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import urllib
import urllib2
import cookielib
import base64
import re
import json
import hashlib
class weiboLogin:
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
postdata = {
&#39;entry&#39;: &#39;weibo&#39;,
&#39;gateway&#39;: &#39;1&#39;,
&#39;from&#39;: &#39;&#39;,
&#39;savestate&#39;: &#39;7&#39;,
&#39;userticket&#39;: &#39;1&#39;,
&#39;ssosimplelogin&#39;: &#39;1&#39;,
&#39;vsnf&#39;: &#39;1&#39;,
&#39;vsnval&#39;: &#39;&#39;,
&#39;su&#39;: &#39;&#39;,
&#39;service&#39;: &#39;miniblog&#39;,
&#39;servertime&#39;: &#39;&#39;,
&#39;nonce&#39;: &#39;&#39;,
&#39;pwencode&#39;: &#39;wsse&#39;,
&#39;sp&#39;: &#39;&#39;,
&#39;encoding&#39;: &#39;UTF-8&#39;,
&#39;url&#39;: &#39;http://weibo.com/ajaxlogin.php ... 39%3B,
&#39;returntype&#39;: &#39;META&#39;
}
def get_servertime(self):
url = &#39;http://login.sina.com.cn/sso/p ... in.js(v1.3.18)&_=1329806375939&#39;
data = urllib2.urlopen(url).read()
p = re.compile(&#39;\((.*)\)&#39;)
try:
json_data = p.search(data).group(1)
data = json.loads(json_data)
servertime = str(data[&#39;servertime&#39;])
nonce = data[&#39;nonce&#39;]
return servertime, nonce
except:
print &#39;Get severtime error!&#39;
return None
def get_pwd(self, pwd, servertime, nonce):
pwd1 = hashlib.sha1(pwd).hexdigest()
pwd2 = hashlib.sha1(pwd1).hexdigest()
pwd3_ = pwd2 + servertime + nonce
pwd3 = hashlib.sha1(pwd3_).hexdigest()
return pwd3
def get_user(self, username):
username_ = urllib.quote(username)
username = base64.encodestring(username_)[:-1]
return username
def login(self,username,pwd):
url = &#39;http://login.sina.com.cn/sso/l ... in.js(v1.3.18)&#39;
try:
servertime, nonce = self.get_servertime()
except:
print &#39;get servertime error!&#39;
return
weiboLogin.postdata[&#39;servertime&#39;] = servertime
weiboLogin.postdata[&#39;nonce&#39;] = nonce
weiboLogin.postdata[&#39;su&#39;] = self.get_user(username)
weiboLogin.postdata[&#39;sp&#39;] = self.get_pwd(pwd, servertime, nonce)
weiboLogin.postdata = urllib.urlencode(weiboLogin.postdata)
headers = {&#39;User-Agent&#39;:&#39;Mozilla/5.0 (X11; Linux i686; rv:8.0) Gecko/20100101 Firefox/8.0 Chrome/20.0.1132.57 Safari/536.11&#39;}
req = urllib2.Request(
url = url,
data = weiboLogin.postdata,
headers = headers
)
result = urllib2.urlopen(req)
text = result.read()
p = re.compile(&#39;location\.replace\(\&#39;(.*?)\&#39;\)&#39;)
try:
login_url = p.search(text).group(1)
urllib2.urlopen(login_url)
print "Login success!"
except:
print &#39;Login error!&#39;
  然后创建 main.py 文件并输入以下代码:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
  注意:如果登录失败,可能是您的账号登录时需要输入验证码!您可以在网页上登录您的帐户并尝试。您可以在账户设置中设置某些区域不输入验证码。
  参考:
  接下来考虑爬取微博内容的实现。
  这时,我遇到了困难。当我抓取指定网址的微博时,最初只显示了15条。后者是延迟显示(在ajax中称为延迟加载?)。也就是说,当滚动条第一次拖到底部时,会显示第二部分,然后再拖到底部,会显示第三部分。此时,一个页面的微博就完成了。因此,要获取一个微博页面的所有微博,需要访问该页面3次。创建getWeiboPage.py文件,对应代码如下:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import urllib
import urllib2
import sys
import time
reload(sys)
sys.setdefaultencoding(&#39;utf-8&#39;)
class getWeiboPage:
body = {
&#39;__rnd&#39;:&#39;&#39;,
&#39;_k&#39;:&#39;&#39;,
&#39;_t&#39;:&#39;0&#39;,
&#39;count&#39;:&#39;50&#39;,
&#39;end_id&#39;:&#39;&#39;,
&#39;max_id&#39;:&#39;&#39;,
&#39;page&#39;:1,
&#39;pagebar&#39;:&#39;&#39;,
&#39;pre_page&#39;:&#39;0&#39;,
&#39;uid&#39;:&#39;&#39;
}
uid_list = []
charset = &#39;utf8&#39;
def get_msg(self,uid):
getWeiboPage.body[&#39;uid&#39;] = uid
url = self.get_url(uid)
self.get_firstpage(url)
self.get_secondpage(url)
self.get_thirdpage(url)
def get_firstpage(self,url):
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]-1
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text1&#39;,text)
self.writefile(&#39;./output/result1&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))

def get_secondpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
# getWeiboPage.body[&#39;end_id&#39;] = &#39;3490160379905732&#39;
# getWeiboPage.body[&#39;max_id&#39;] = &#39;3487344294660278&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;0&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text2&#39;,text)
self.writefile(&#39;./output/result2&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_thirdpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;1&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text3&#39;,text)
self.writefile(&#39;./output/result3&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_url(self,uid):
url = &#39;http://weibo.com/&#39; + uid + &#39;?from=otherprofile&wvr=3.6&loc=tagweibo&#39;
return url
def get_uid(self,filename):
fread = file(filename)
for line in fread:
getWeiboPage.uid_list.append(line)
print line
time.sleep(1)
def writefile(self,filename,content):
fw = file(filename,&#39;w&#39;)
fw.write(content)
fw.close()
  在刚才的main.py中添加相应的内容,完整内容为:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import getWeiboMsg
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
WBmsg = getWeiboMsg.getWeiboMsg()
url = &#39;http://weibo.com/1624087025%3F ... 39%3B
WBmsg.get_firstpage(url)
WBmsg.get_secondpage(url)
WBmsg.get_thirdpage(url)
  参考:
  执行python main.py,应该可以运行了,结果保存在./output/文件夹中,这个文件夹是提前创建的。
  昨天我们整整过了一个下午,还有很多事情没有做。欢迎留言。 查看全部

  网站调用新浪微博内容(新版新浪微博模拟登陆请看:本文后面的解决动态加载的程序)
  新版新浪微博模拟登录请看:
  本文后面解决动态加载的程序还是有效的
  再次编辑,出了点问题
  第一个模块是模拟登录新浪微博,创建一个weiboLogin.py文件,输入如下代码:
  #! /usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import urllib
import urllib2
import cookielib
import base64
import re
import json
import hashlib
class weiboLogin:
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
postdata = {
&#39;entry&#39;: &#39;weibo&#39;,
&#39;gateway&#39;: &#39;1&#39;,
&#39;from&#39;: &#39;&#39;,
&#39;savestate&#39;: &#39;7&#39;,
&#39;userticket&#39;: &#39;1&#39;,
&#39;ssosimplelogin&#39;: &#39;1&#39;,
&#39;vsnf&#39;: &#39;1&#39;,
&#39;vsnval&#39;: &#39;&#39;,
&#39;su&#39;: &#39;&#39;,
&#39;service&#39;: &#39;miniblog&#39;,
&#39;servertime&#39;: &#39;&#39;,
&#39;nonce&#39;: &#39;&#39;,
&#39;pwencode&#39;: &#39;wsse&#39;,
&#39;sp&#39;: &#39;&#39;,
&#39;encoding&#39;: &#39;UTF-8&#39;,
&#39;url&#39;: &#39;http://weibo.com/ajaxlogin.php ... 39%3B,
&#39;returntype&#39;: &#39;META&#39;
}
def get_servertime(self):
url = &#39;http://login.sina.com.cn/sso/p ... in.js(v1.3.18)&_=1329806375939&#39;
data = urllib2.urlopen(url).read()
p = re.compile(&#39;\((.*)\)&#39;)
try:
json_data = p.search(data).group(1)
data = json.loads(json_data)
servertime = str(data[&#39;servertime&#39;])
nonce = data[&#39;nonce&#39;]
return servertime, nonce
except:
print &#39;Get severtime error!&#39;
return None
def get_pwd(self, pwd, servertime, nonce):
pwd1 = hashlib.sha1(pwd).hexdigest()
pwd2 = hashlib.sha1(pwd1).hexdigest()
pwd3_ = pwd2 + servertime + nonce
pwd3 = hashlib.sha1(pwd3_).hexdigest()
return pwd3
def get_user(self, username):
username_ = urllib.quote(username)
username = base64.encodestring(username_)[:-1]
return username
def login(self,username,pwd):
url = &#39;http://login.sina.com.cn/sso/l ... in.js(v1.3.18)&#39;
try:
servertime, nonce = self.get_servertime()
except:
print &#39;get servertime error!&#39;
return
weiboLogin.postdata[&#39;servertime&#39;] = servertime
weiboLogin.postdata[&#39;nonce&#39;] = nonce
weiboLogin.postdata[&#39;su&#39;] = self.get_user(username)
weiboLogin.postdata[&#39;sp&#39;] = self.get_pwd(pwd, servertime, nonce)
weiboLogin.postdata = urllib.urlencode(weiboLogin.postdata)
headers = {&#39;User-Agent&#39;:&#39;Mozilla/5.0 (X11; Linux i686; rv:8.0) Gecko/20100101 Firefox/8.0 Chrome/20.0.1132.57 Safari/536.11&#39;}
req = urllib2.Request(
url = url,
data = weiboLogin.postdata,
headers = headers
)
result = urllib2.urlopen(req)
text = result.read()
p = re.compile(&#39;location\.replace\(\&#39;(.*?)\&#39;\)&#39;)
try:
login_url = p.search(text).group(1)
urllib2.urlopen(login_url)
print "Login success!"
except:
print &#39;Login error!&#39;
  然后创建 main.py 文件并输入以下代码:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
  注意:如果登录失败,可能是您的账号登录时需要输入验证码!您可以在网页上登录您的帐户并尝试。您可以在账户设置中设置某些区域不输入验证码。
  参考:
  接下来考虑爬取微博内容的实现。
  这时,我遇到了困难。当我抓取指定网址的微博时,最初只显示了15条。后者是延迟显示(在ajax中称为延迟加载?)。也就是说,当滚动条第一次拖到底部时,会显示第二部分,然后再拖到底部,会显示第三部分。此时,一个页面的微博就完成了。因此,要获取一个微博页面的所有微博,需要访问该页面3次。创建getWeiboPage.py文件,对应代码如下:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import urllib
import urllib2
import sys
import time
reload(sys)
sys.setdefaultencoding(&#39;utf-8&#39;)
class getWeiboPage:
body = {
&#39;__rnd&#39;:&#39;&#39;,
&#39;_k&#39;:&#39;&#39;,
&#39;_t&#39;:&#39;0&#39;,
&#39;count&#39;:&#39;50&#39;,
&#39;end_id&#39;:&#39;&#39;,
&#39;max_id&#39;:&#39;&#39;,
&#39;page&#39;:1,
&#39;pagebar&#39;:&#39;&#39;,
&#39;pre_page&#39;:&#39;0&#39;,
&#39;uid&#39;:&#39;&#39;
}
uid_list = []
charset = &#39;utf8&#39;
def get_msg(self,uid):
getWeiboPage.body[&#39;uid&#39;] = uid
url = self.get_url(uid)
self.get_firstpage(url)
self.get_secondpage(url)
self.get_thirdpage(url)
def get_firstpage(self,url):
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]-1
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text1&#39;,text)
self.writefile(&#39;./output/result1&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))

def get_secondpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
# getWeiboPage.body[&#39;end_id&#39;] = &#39;3490160379905732&#39;
# getWeiboPage.body[&#39;max_id&#39;] = &#39;3487344294660278&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;0&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text2&#39;,text)
self.writefile(&#39;./output/result2&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_thirdpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;1&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text3&#39;,text)
self.writefile(&#39;./output/result3&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_url(self,uid):
url = &#39;http://weibo.com/&#39; + uid + &#39;?from=otherprofile&wvr=3.6&loc=tagweibo&#39;
return url
def get_uid(self,filename):
fread = file(filename)
for line in fread:
getWeiboPage.uid_list.append(line)
print line
time.sleep(1)
def writefile(self,filename,content):
fw = file(filename,&#39;w&#39;)
fw.write(content)
fw.close()
  在刚才的main.py中添加相应的内容,完整内容为:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import getWeiboMsg
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
WBmsg = getWeiboMsg.getWeiboMsg()
url = &#39;http://weibo.com/1624087025%3F ... 39%3B
WBmsg.get_firstpage(url)
WBmsg.get_secondpage(url)
WBmsg.get_thirdpage(url)
  参考:
  执行python main.py,应该可以运行了,结果保存在./output/文件夹中,这个文件夹是提前创建的。
  昨天我们整整过了一个下午,还有很多事情没有做。欢迎留言。

网站调用新浪微博内容(12-第三方登录开发模式(图)登录、第三方)

网站优化优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2021-12-16 15:30 • 来自相关话题

  网站调用新浪微博内容(12-第三方登录开发模式(图)登录、第三方)
  12-第三方登录
  一、第三方登录1.1、第三方登录开发模式 先注册一个第三方登录开发平台如微博开放平台1.2、oauth 2.@ &gt;0Get access_tokenapps/utils/weibo_longin.pydefget_auth_url():#获取代码参数weibo_auth_url='#x27;redi
  .NET实现微博粉丝服务平台接口
  它是每个应用程序中唯一的OpenID,在微博中,它是用户的uid。对于文本消息,requestMessage中有一个Content属性来获取用户发送的文本内容,根据用户发送的内容不同返回不同的结果;对于事件消息,有一个 Event 属性来获取事件类型;对于菜单点击事件和链接消息,有EventKey属性可以分别指示菜单事件的名称和点击菜单后跳转到的URL地址,特别是点击事件,可以根据不同的EventKeys返回。
  【上班钓鱼】聊天机器人定时发微博热搜
  微博最新资讯2、bs4包分析最新数据网页3、过滤当前微博推广热搜4、构建合适的企业微信机器人降价数据企业微信机器人1、@ &gt;根据企业微信机器人接口CI定时触发实现请求方法1、使用编码提供的免费ci构建并执行python脚本2、设置构建作业的定时任务实现python实现的脚本数据分析组装基础微博首页地址"
  微博版本控制真的有问题
  微博的版本控制确实有问题。一时兴起,想取消一些第三方网站或者微博登录绑定的应用的授权,可是根本找不到北!无论是新的还是原创的界面。感觉就像是在 N 年前的“帐户设置”中,但现在不是。搜了一堆问答,官方客服,@微博客服机器人也是N年前的老答案。在账户设置、管理中心等,根本没有“我的应用”或“我的工具”。有一个“开放平台”,其中“我的应用程序”和解除绑定不是一回事。折腾了半天,在多个答案中找到了解决方法
  SpringBoot+Vue 实现第三方QQ登录(二)
  nbsp;OpenAPI调用说明_OAuth2.@>0 这一步的作用:获取AccessToken和OpenID后,可以通过调用OpenAPI获取或修改用户的个人信息。这一步在整个过程中的位置: 5.1 前提条件1. appid已经激活使用OpenAPI。从API列表中的接口列表可以看出,有些接口是完全开放的,有些接口需要提前提交才能获得访问权限。2.@> 被访问的资源被授权给用户访问。网站致电
  前端攻击(XSS 和 CSRF)
  1.CSRF(Cross-siterequestforgery)的基本概念、缩写和全称:跨站请求伪造用户是网站A的注册用户,登录后,网站A就会交给用户 从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要条件:1.login trust 网站A,并在本地生成一个cookie。(如果用户没有登录网站A,那么网站B在诱导时请求网站A的api接口时会提示你登录。)2.@>当没有退出 A
  JWT 认证设置一些类型的令牌(验证协议)
  ------什么样的token可以算是bearertoken?过去,当一个用户被认证时,一般是: -&gt; 用户向服务器发送验证信息(用户名、密码)。-&gt; 如果认证成功,服务器会返回一个sessionid给用户,服务器会保存这个session_id对应的信息,写入到用户的Cookie中。-&gt; 前端每次发送请求后,都会通过Cookie将session_id发回服务器,服务器会收到session_
  微信不再提供打开应用的小程序?借助H5,你必须知道引流App流量的方法!
  &gt; 用于将微博内容以小程序形式分享给微信好友的应用。打开微博小程序页面,点击【打开应用】按钮,选择调出微博App指定页面,引导App通过小程序流程:现在:App-&gt;H5-&gt;App和App-&gt; H5-&gt;小程序 由于新政策,小程序不能再唤起应用程序,所以微博改变了策略,从在微信上分享微博内容给朋友。变成了H5页面的形式。打开H5页面,可以看到底部有两个明显的
  软件工程大学项目分工
  个人博客系统任务分工:郑负责文档撰写(包括开发文档、需求文档、用户使用文档)和PPT答辩。技术方面需要实现个人博客的登录功能。Minghe Li 负责后端代码开发、测试和前端集成。主要实现个人微博博客管理、分类管理、标签管理三大模块。博客管理模块包括:发布博客、修改博客、删除博客、查询博客分类管理模块包括:新建分类、修改分类、删除分类、查询分类标签管理模块添加新标签、修改标签、删除标签绘制、处理前端代码开发
  什么是 API 和 SDK?有什么不同?如何测试SDK?
  pi的过程就是用钥匙开门的过程。SDK 将这些钥匙串放在一起,并将 api 集成在一起。使用 SDK,您可以在家中畅行无阻。想要拿到房间里的资源,用手拿着钥匙开门进去拿。两者的区别:API是一个明确的功能,其作用已经明确(例如加法)。SDK就像是很多方法的集合,是一个工具。比如要加法调用电脑SDK的加法API实现,要减法调用减法。 查看全部

  网站调用新浪微博内容(12-第三方登录开发模式(图)登录、第三方)
  12-第三方登录
  一、第三方登录1.1、第三方登录开发模式 先注册一个第三方登录开发平台如微博开放平台1.2、oauth 2.@ &gt;0Get access_tokenapps/utils/weibo_longin.pydefget_auth_url():#获取代码参数weibo_auth_url='#x27;redi
  .NET实现微博粉丝服务平台接口
  它是每个应用程序中唯一的OpenID,在微博中,它是用户的uid。对于文本消息,requestMessage中有一个Content属性来获取用户发送的文本内容,根据用户发送的内容不同返回不同的结果;对于事件消息,有一个 Event 属性来获取事件类型;对于菜单点击事件和链接消息,有EventKey属性可以分别指示菜单事件的名称和点击菜单后跳转到的URL地址,特别是点击事件,可以根据不同的EventKeys返回。
  【上班钓鱼】聊天机器人定时发微博热搜
  微博最新资讯2、bs4包分析最新数据网页3、过滤当前微博推广热搜4、构建合适的企业微信机器人降价数据企业微信机器人1、@ &gt;根据企业微信机器人接口CI定时触发实现请求方法1、使用编码提供的免费ci构建并执行python脚本2、设置构建作业的定时任务实现python实现的脚本数据分析组装基础微博首页地址"
  微博版本控制真的有问题
  微博的版本控制确实有问题。一时兴起,想取消一些第三方网站或者微博登录绑定的应用的授权,可是根本找不到北!无论是新的还是原创的界面。感觉就像是在 N 年前的“帐户设置”中,但现在不是。搜了一堆问答,官方客服,@微博客服机器人也是N年前的老答案。在账户设置、管理中心等,根本没有“我的应用”或“我的工具”。有一个“开放平台”,其中“我的应用程序”和解除绑定不是一回事。折腾了半天,在多个答案中找到了解决方法
  SpringBoot+Vue 实现第三方QQ登录(二)
  nbsp;OpenAPI调用说明_OAuth2.@>0 这一步的作用:获取AccessToken和OpenID后,可以通过调用OpenAPI获取或修改用户的个人信息。这一步在整个过程中的位置: 5.1 前提条件1. appid已经激活使用OpenAPI。从API列表中的接口列表可以看出,有些接口是完全开放的,有些接口需要提前提交才能获得访问权限。2.@> 被访问的资源被授权给用户访问。网站致电
  前端攻击(XSS 和 CSRF)
  1.CSRF(Cross-siterequestforgery)的基本概念、缩写和全称:跨站请求伪造用户是网站A的注册用户,登录后,网站A就会交给用户 从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要条件:1.login trust 网站A,并在本地生成一个cookie。(如果用户没有登录网站A,那么网站B在诱导时请求网站A的api接口时会提示你登录。)2.@>当没有退出 A
  JWT 认证设置一些类型的令牌(验证协议)
  ------什么样的token可以算是bearertoken?过去,当一个用户被认证时,一般是: -&gt; 用户向服务器发送验证信息(用户名、密码)。-&gt; 如果认证成功,服务器会返回一个sessionid给用户,服务器会保存这个session_id对应的信息,写入到用户的Cookie中。-&gt; 前端每次发送请求后,都会通过Cookie将session_id发回服务器,服务器会收到session_
  微信不再提供打开应用的小程序?借助H5,你必须知道引流App流量的方法!
  &gt; 用于将微博内容以小程序形式分享给微信好友的应用。打开微博小程序页面,点击【打开应用】按钮,选择调出微博App指定页面,引导App通过小程序流程:现在:App-&gt;H5-&gt;App和App-&gt; H5-&gt;小程序 由于新政策,小程序不能再唤起应用程序,所以微博改变了策略,从在微信上分享微博内容给朋友。变成了H5页面的形式。打开H5页面,可以看到底部有两个明显的
  软件工程大学项目分工
  个人博客系统任务分工:郑负责文档撰写(包括开发文档、需求文档、用户使用文档)和PPT答辩。技术方面需要实现个人博客的登录功能。Minghe Li 负责后端代码开发、测试和前端集成。主要实现个人微博博客管理、分类管理、标签管理三大模块。博客管理模块包括:发布博客、修改博客、删除博客、查询博客分类管理模块包括:新建分类、修改分类、删除分类、查询分类标签管理模块添加新标签、修改标签、删除标签绘制、处理前端代码开发
  什么是 API 和 SDK?有什么不同?如何测试SDK?
  pi的过程就是用钥匙开门的过程。SDK 将这些钥匙串放在一起,并将 api 集成在一起。使用 SDK,您可以在家中畅行无阻。想要拿到房间里的资源,用手拿着钥匙开门进去拿。两者的区别:API是一个明确的功能,其作用已经明确(例如加法)。SDK就像是很多方法的集合,是一个工具。比如要加法调用电脑SDK的加法API实现,要减法调用减法。

网站调用新浪微博内容(的问题是解决图片覆盖到文字之上,文字如何可以点击或选中)

网站优化优采云 发表了文章 • 0 个评论 • 39 次浏览 • 2021-12-16 06:16 • 来自相关话题

  网站调用新浪微博内容(的问题是解决图片覆盖到文字之上,文字如何可以点击或选中)
  新浪微博还没有登录。新浪微博首页有一个“大家都在说话”模块,动态滚动最新的微博帖子。
  需求方面,该功能需要实时调用最新的微博数据。仅就前端开发而言,其需求可以拆分如下:
  1 内容继续滚动;
  2 新微博先下推下一条微博,再淡入;
  3 鼠标经过内容时暂停滚动;
  4 容器底部的渐变在背景色下消失。
  以上4个需求中,需求1-3是通过js技术实现的,需求4是通过css技术实现的。下面我们一一说下要求。
  需求一和需求二:内容连续滚动的需求有点类似于上一篇文章《小模块:公告滚动与暂停》介绍的功能。在那篇文章中,这个函数使用了CSS Position定位来控制整个ul列表的移动动画。结合需求2,我们可以写的更简单一些,让最后一个li元素有规律地插入第一个li元素的上方,然后使用animate方法改变li的高度和透明度。setTimeout 方法仍然用于无暂停滚动。在没有新数据加载的情况下,实现有限内容循环滚动。
  需求3:当鼠标经过并暂停时,可以在鼠标悬停时将属性的值添加到元素中。这里使用name属性来判断这个值是否存在,如果存在则不执行代码。
  需求4:可以通过在内容上叠加渐变的png24图片来实现。IE6 不能很好地支持 png24。如果需要考虑性能,请在此容器中添加带有 display:none 的 IE6hack。下一个问题是解决图片叠加在文字上时文字如何被点击或选中的问题。这时候就需要一个特殊的css属性“pointer-events”。该属性的值设置为none后,鼠标可以通过选择绝对定位在文字上的图片下方的文字。
  集成代码如下:
  HTML
  复制代码代码如下:
  CSS
  复制代码代码如下:
  .messagewrap{overflow:hidden;position:relative;width:500px;height:300px}
  li{高度:50px;}
  .bottomcover{width:500px;height:45px;position:absolute;bottom:0;left:0;
  指针事件:无;背景:url(halftransp.png-600) 左下无重复;
  /*透明图片从背景颜色向上渐变*/ _display:none;/*降级为IE6体验*/)
  JS
  复制代码代码如下:
  以上是基于jquery的内容循环滚动模块的详细内容(模仿新浪微博未登录首页滚动微博显示),更多详情请关注其他相关html中文网站文章! 查看全部

  网站调用新浪微博内容(的问题是解决图片覆盖到文字之上,文字如何可以点击或选中)
  新浪微博还没有登录。新浪微博首页有一个“大家都在说话”模块,动态滚动最新的微博帖子。
  需求方面,该功能需要实时调用最新的微博数据。仅就前端开发而言,其需求可以拆分如下:
  1 内容继续滚动;
  2 新微博先下推下一条微博,再淡入;
  3 鼠标经过内容时暂停滚动;
  4 容器底部的渐变在背景色下消失。
  以上4个需求中,需求1-3是通过js技术实现的,需求4是通过css技术实现的。下面我们一一说下要求。
  需求一和需求二:内容连续滚动的需求有点类似于上一篇文章《小模块:公告滚动与暂停》介绍的功能。在那篇文章中,这个函数使用了CSS Position定位来控制整个ul列表的移动动画。结合需求2,我们可以写的更简单一些,让最后一个li元素有规律地插入第一个li元素的上方,然后使用animate方法改变li的高度和透明度。setTimeout 方法仍然用于无暂停滚动。在没有新数据加载的情况下,实现有限内容循环滚动。
  需求3:当鼠标经过并暂停时,可以在鼠标悬停时将属性的值添加到元素中。这里使用name属性来判断这个值是否存在,如果存在则不执行代码。
  需求4:可以通过在内容上叠加渐变的png24图片来实现。IE6 不能很好地支持 png24。如果需要考虑性能,请在此容器中添加带有 display:none 的 IE6hack。下一个问题是解决图片叠加在文字上时文字如何被点击或选中的问题。这时候就需要一个特殊的css属性“pointer-events”。该属性的值设置为none后,鼠标可以通过选择绝对定位在文字上的图片下方的文字。
  集成代码如下:
  HTML
  复制代码代码如下:
  CSS
  复制代码代码如下:
  .messagewrap{overflow:hidden;position:relative;width:500px;height:300px}
  li{高度:50px;}
  .bottomcover{width:500px;height:45px;position:absolute;bottom:0;left:0;
  指针事件:无;背景:url(halftransp.png-600) 左下无重复;
  /*透明图片从背景颜色向上渐变*/ _display:none;/*降级为IE6体验*/)
  JS
  复制代码代码如下:
  以上是基于jquery的内容循环滚动模块的详细内容(模仿新浪微博未登录首页滚动微博显示),更多详情请关注其他相关html中文网站文章!

网站调用新浪微博内容( 如何做一个新浪微博应用,你需要知道的一些事)

网站优化优采云 发表了文章 • 0 个评论 • 38 次浏览 • 2021-12-16 06:15 • 来自相关话题

  网站调用新浪微博内容(
如何做一个新浪微博应用,你需要知道的一些事)
  
  我开发的第一个新浪微博应用“蟹爪消息导入”已通过新浪审核。正如申请页面所说,正是因为我有这样的需求,所以我努力工作,从头开始。我忘记了 N 年的 PHP 和 JS。我利用空闲时间完成了这个申请。花了不到一周的时间。一开始,通过dome熟悉流程需要2天时间。后来发展很顺利,主要是百度加了。完成。
  作者最初在微博上使用了饭否,但饭否以某种方式关闭了它。然后他找到了和凡夫最相似的蟹爪,支持凡夫的介绍。
  后来新浪微博测试了,作者就开始用了。如果我觉得新浪微博好的话,我总是使用它。不过作者有采集习惯,希望能把所有微薄的东西都采集起来。恰巧新浪微博有一个开放的平台,所以才有了Up这个应用。
  如果你也有和作者一样的采集癖,恰好和作者用的微博有同样的轨迹,那你不妨也试试把饭否和蟹爪微博也导入新浪微博。
  如果要创建新浪微博应用,必须先到新浪微博开放平台创建一个账号。您可以参考初学者指南。有一个问题。创建申请时需要填写“申请地址”。对于没有主机资源的普通开发者来说,这是一个问题。但是如果用PHP打开,这里推荐SAE(SinaApp Engine)。
  SAE是Sina AppEngine(新浪应用引擎)的缩写。SAE是分布式Web应用开发和运营的服务平台。它不仅包括创建和部署Web应用程序的简单交互,还涉及一套完整的大规模分布式服务解决方案。. 通过SAE,用户可以轻松创建Web应用、定制Web应用、开发Web应用、部署Web应用、切换在线版本、删除应用,大大节省了开发者的开发成本和运维成本。
  SAE注册需要邀请码,否则只能注册为体验用户。体验用户只能试用5天。到期后,删除账户和所有代码。当然,您可以在 5 天内开发代码,申请更正,或者重新注册体验用户。
  在SAE中创建一个应用程序,然后在代码管理中创建一个新版本,这样就可以开始开发了。
  
  SAE 使用 SDK 工具上传代码。其实调用SDK工具有点勉强。它显然只是上传工具的增强版。
  
  PHP开发可以参考这两个文章:《微博开放平台OAuth的libSaeT上线》、《SaeTlib升级,原SaeT Class更名为SaeTOAuth,增加SaeTClient》。然后下载dome并上传测试。
  演示教程
  1. 下载,然后解压,修改config.php中的key
  2. 打开index.php,将第13行最后一个url改成你的网站对应的callback.php的url
  3. 直接上传到PHP空间
  注意index.php页面的回调页面地址一定要正确,尤其是版本号。否则会报如下错误:
  
 Error_code: 400; Error: 40022:Error: source paramter(appkey) is missing? <br />
  如果你正在访问,回调页面应该是;如果您使用版本号访问,则回调页面应该是。
  这个问题我调试了很久,群里大部分问题都说App Key和AppSecret不对,因为错误描述只能这么猜。我猜这个问题是由跨域丢失引起的。
  Dome 调整好之后,以后实施起来会比较容易。
  主要遇到以下问题:
  1.SAE上传文件比较麻烦,我换成了textarea。
  2.新浪微博API不允许频繁调用。估计是防止垃圾邮件。后来我用JS超时控制,每30秒通过AJAX发送。
  3.IE和FF Ajax兼容时出现乱码问题,由encodeURI(url)控制。
  下面是代码实现。
  索引.php
  
1 getRequestToken();
  
13 $aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false , 'http://' . $_SERVER['HTTP_APPNAME'] . '.sinaapp.com/callback.php');
  
14
  
15 $_SESSION['keys'] = $keys;
  
16
  
17 header("Location: ".$aurl);
  
18 ?>
  19 查看全部

  网站调用新浪微博内容(
如何做一个新浪微博应用,你需要知道的一些事)
  
  我开发的第一个新浪微博应用“蟹爪消息导入”已通过新浪审核。正如申请页面所说,正是因为我有这样的需求,所以我努力工作,从头开始。我忘记了 N 年的 PHP 和 JS。我利用空闲时间完成了这个申请。花了不到一周的时间。一开始,通过dome熟悉流程需要2天时间。后来发展很顺利,主要是百度加了。完成。
  作者最初在微博上使用了饭否,但饭否以某种方式关闭了它。然后他找到了和凡夫最相似的蟹爪,支持凡夫的介绍。
  后来新浪微博测试了,作者就开始用了。如果我觉得新浪微博好的话,我总是使用它。不过作者有采集习惯,希望能把所有微薄的东西都采集起来。恰巧新浪微博有一个开放的平台,所以才有了Up这个应用。
  如果你也有和作者一样的采集癖,恰好和作者用的微博有同样的轨迹,那你不妨也试试把饭否和蟹爪微博也导入新浪微博。
  如果要创建新浪微博应用,必须先到新浪微博开放平台创建一个账号。您可以参考初学者指南。有一个问题。创建申请时需要填写“申请地址”。对于没有主机资源的普通开发者来说,这是一个问题。但是如果用PHP打开,这里推荐SAE(SinaApp Engine)。
  SAE是Sina AppEngine(新浪应用引擎)的缩写。SAE是分布式Web应用开发和运营的服务平台。它不仅包括创建和部署Web应用程序的简单交互,还涉及一套完整的大规模分布式服务解决方案。. 通过SAE,用户可以轻松创建Web应用、定制Web应用、开发Web应用、部署Web应用、切换在线版本、删除应用,大大节省了开发者的开发成本和运维成本。
  SAE注册需要邀请码,否则只能注册为体验用户。体验用户只能试用5天。到期后,删除账户和所有代码。当然,您可以在 5 天内开发代码,申请更正,或者重新注册体验用户。
  在SAE中创建一个应用程序,然后在代码管理中创建一个新版本,这样就可以开始开发了。
  
  SAE 使用 SDK 工具上传代码。其实调用SDK工具有点勉强。它显然只是上传工具的增强版。
  
  PHP开发可以参考这两个文章:《微博开放平台OAuth的libSaeT上线》、《SaeTlib升级,原SaeT Class更名为SaeTOAuth,增加SaeTClient》。然后下载dome并上传测试。
  演示教程
  1. 下载,然后解压,修改config.php中的key
  2. 打开index.php,将第13行最后一个url改成你的网站对应的callback.php的url
  3. 直接上传到PHP空间
  注意index.php页面的回调页面地址一定要正确,尤其是版本号。否则会报如下错误:
  
 Error_code: 400; Error: 40022:Error: source paramter(appkey) is missing? <br />
  如果你正在访问,回调页面应该是;如果您使用版本号访问,则回调页面应该是。
  这个问题我调试了很久,群里大部分问题都说App Key和AppSecret不对,因为错误描述只能这么猜。我猜这个问题是由跨域丢失引起的。
  Dome 调整好之后,以后实施起来会比较容易。
  主要遇到以下问题:
  1.SAE上传文件比较麻烦,我换成了textarea。
  2.新浪微博API不允许频繁调用。估计是防止垃圾邮件。后来我用JS超时控制,每30秒通过AJAX发送。
  3.IE和FF Ajax兼容时出现乱码问题,由encodeURI(url)控制。
  下面是代码实现。
  索引.php
  
1 getRequestToken();
  
13 $aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false , 'http://' . $_SERVER['HTTP_APPNAME'] . '.sinaapp.com/callback.php');
  
14
  
15 $_SESSION['keys'] = $keys;
  
16
  
17 header("Location: ".$aurl);
  
18 ?>
  19

网站调用新浪微博内容( 一个自动发布新浪微博的机器人(图)分享(组图) )

网站优化优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2021-12-15 22:16 • 来自相关话题

  网站调用新浪微博内容(
一个自动发布新浪微博的机器人(图)分享(组图)
)
  
  作者 | 周道
  生产 | 萝卜杂烩
  最近在研究使用Python制作各种类型的机器人。今天给大家分享一个自动发布新浪微博的机器人。
  基本思想
  其实实现一个简单的微博机器人自动发布并不难。你只需要每天准时找到要发布的素材(一般是爬虫),然后通过微博开放的API接口自动发布。
  材料
  材料方面,我选择了金山词霸的每日一句。我们可以抓取这个网站的相关信息来组成我们的微博素材。
  微博接口
  微博为开发者提供开放平台
  当然,在使用这个平台之前,我们仍然需要注册并创建一个应用程序。比如像我一样,创建一个应用程序
  
  然后我们还需要设置一个安全域名(以后发布微博时会用到),在应用信息-&gt;基本信息中设置。
  
  还需要设置应用回调地址,在应用信息-&gt;高级信息中设置。
  
  当然,对于微博API的调用,我们可以使用别人打包的第三方库,操作起来更方便。这里我使用了一个名为“weibo”的库,直接使用pip安装。
  pip 安装微博
  但是我遇到了一个安装问题,错误如下
  Traceback (most recent call last):
  File "setup.py", line 15, in 
    long_description=open(&#39;README.rst&#39;).read(),
UnicodeDecodeError: &#39;gbk&#39; codec can&#39;t decode byte 0xae in position 241: illegal multibyte sequence
  好像是编码问题,我们可以通过修改源代码来规避
  
  long_description=open(&#39;README.rst&#39;, encoding=&#39;utf-8&#39;).read(),
  python setup.py build
python setup.py install
  至此就可以成功安装微博库了
  准备工作和写作思路就是这些,下面我们来看看具体的过程和代码
  自动发布微博
  根据微博库的文档,操作微博还是比较好用的。您只需要在我们创建微博应用时提供App Key和App Secret以及应用回调地址信息即可。简单的调用代码如下
  from weibo import Client
c = Client(&#39;App Key&#39;, &#39;App Secret&#39;, &#39;https://www.luobodazahui.top&#39;, username=&#39;username&#39;, password=&#39;password&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名)
  我们运行代码,如果没有任何反应,我们将可以在该帐户下的微博中看到刚刚发布的微博。
  
  最简单的微博已经发布成功了,那么我们可以发布带图片的微博,我们试试吧
  根据接口status/share的文档,我们可以传入pic参数来上传图片
  
  我们传入 pic 参数并尝试
  f = open(&#39;4.png&#39;, &#39;rb&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名, pic=f)
f.close()
  是的,它可以正常发布带图片的微博
  
  那么现在微博的自动发布就完成了,下面我们来看看如何自动获取微博素材
  微博素材
  对于金山词霸的每日一句,我们可以使用以下API获取每日信息
  可以看到界面返回如下信息
  
  我们可以直接使用requests库来调用这个接口
  import requests
url = &#39;http://open.iciba.com/dsapi/&#39;
res = requests.get(url)
content_e = res.json()[&#39;content&#39;]
content_c = res.json()[&#39;note&#39;]
content = content_e + &#39;\n&#39; + content_c
content_t = res.json()[&#39;picture2&#39;]
  现在我们封装两个函数来完成功能
  def weibo(content, picture):
    ff = requests.get(picture).content
    c = Client(app_key, app_secret, &#39;https://www.luobodazahui.top&#39;, username=username, password=password)
    c.post(&#39;statuses/share&#39;, status=content + &#39;https://www.luobodazahui.com&#39;, pic=ff)
def auto_weibo():
    url = &#39;http://open.iciba.com/dsapi/&#39;
    res = requests.get(url)
    content_e = res.json()[&#39;content&#39;]
    content_c = res.json()[&#39;note&#39;]
    content = content_e + &#39;\n&#39; + content_c
    content_t = res.json()[&#39;picture2&#39;]
    weibo(content, content_t)
    return &#39;OK&#39;
  现在我们可以创建一个定时任务,每天7点运行脚本。
  0 7 * * * python auto_weibo.py
  最终效果如下
  
  
  
  过去的
  预计
  回到
  顾
  技术
  6种常用的绘制地图的方法,代码直播!
  信息
  DeepMind 打造 AI 游戏系统
  技术
  9个简单易用的python文件操作方法
  信息
  程序员是复制粘贴工具的人吗?还是…
   查看全部

  网站调用新浪微博内容(
一个自动发布新浪微博的机器人(图)分享(组图)
)
  
  作者 | 周道
  生产 | 萝卜杂烩
  最近在研究使用Python制作各种类型的机器人。今天给大家分享一个自动发布新浪微博的机器人。
  基本思想
  其实实现一个简单的微博机器人自动发布并不难。你只需要每天准时找到要发布的素材(一般是爬虫),然后通过微博开放的API接口自动发布。
  材料
  材料方面,我选择了金山词霸的每日一句。我们可以抓取这个网站的相关信息来组成我们的微博素材。
  微博接口
  微博为开发者提供开放平台
  当然,在使用这个平台之前,我们仍然需要注册并创建一个应用程序。比如像我一样,创建一个应用程序
  
  然后我们还需要设置一个安全域名(以后发布微博时会用到),在应用信息-&gt;基本信息中设置。
  
  还需要设置应用回调地址,在应用信息-&gt;高级信息中设置。
  
  当然,对于微博API的调用,我们可以使用别人打包的第三方库,操作起来更方便。这里我使用了一个名为“weibo”的库,直接使用pip安装。
  pip 安装微博
  但是我遇到了一个安装问题,错误如下
  Traceback (most recent call last):
  File "setup.py", line 15, in 
    long_description=open(&#39;README.rst&#39;).read(),
UnicodeDecodeError: &#39;gbk&#39; codec can&#39;t decode byte 0xae in position 241: illegal multibyte sequence
  好像是编码问题,我们可以通过修改源代码来规避
  
  long_description=open(&#39;README.rst&#39;, encoding=&#39;utf-8&#39;).read(),
  python setup.py build
python setup.py install
  至此就可以成功安装微博库了
  准备工作和写作思路就是这些,下面我们来看看具体的过程和代码
  自动发布微博
  根据微博库的文档,操作微博还是比较好用的。您只需要在我们创建微博应用时提供App Key和App Secret以及应用回调地址信息即可。简单的调用代码如下
  from weibo import Client
c = Client(&#39;App Key&#39;, &#39;App Secret&#39;, &#39;https://www.luobodazahui.top&#39;, username=&#39;username&#39;, password=&#39;password&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名)
  我们运行代码,如果没有任何反应,我们将可以在该帐户下的微博中看到刚刚发布的微博。
  
  最简单的微博已经发布成功了,那么我们可以发布带图片的微博,我们试试吧
  根据接口status/share的文档,我们可以传入pic参数来上传图片
  
  我们传入 pic 参数并尝试
  f = open(&#39;4.png&#39;, &#39;rb&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名, pic=f)
f.close()
  是的,它可以正常发布带图片的微博
  
  那么现在微博的自动发布就完成了,下面我们来看看如何自动获取微博素材
  微博素材
  对于金山词霸的每日一句,我们可以使用以下API获取每日信息
  可以看到界面返回如下信息
  
  我们可以直接使用requests库来调用这个接口
  import requests
url = &#39;http://open.iciba.com/dsapi/&#39;
res = requests.get(url)
content_e = res.json()[&#39;content&#39;]
content_c = res.json()[&#39;note&#39;]
content = content_e + &#39;\n&#39; + content_c
content_t = res.json()[&#39;picture2&#39;]
  现在我们封装两个函数来完成功能
  def weibo(content, picture):
    ff = requests.get(picture).content
    c = Client(app_key, app_secret, &#39;https://www.luobodazahui.top&#39;, username=username, password=password)
    c.post(&#39;statuses/share&#39;, status=content + &#39;https://www.luobodazahui.com&#39;, pic=ff)
def auto_weibo():
    url = &#39;http://open.iciba.com/dsapi/&#39;
    res = requests.get(url)
    content_e = res.json()[&#39;content&#39;]
    content_c = res.json()[&#39;note&#39;]
    content = content_e + &#39;\n&#39; + content_c
    content_t = res.json()[&#39;picture2&#39;]
    weibo(content, content_t)
    return &#39;OK&#39;
  现在我们可以创建一个定时任务,每天7点运行脚本。
  0 7 * * * python auto_weibo.py
  最终效果如下
  
  
  
  过去的
  预计
  回到
  顾
  技术
  6种常用的绘制地图的方法,代码直播!
  信息
  DeepMind 打造 AI 游戏系统
  技术
  9个简单易用的python文件操作方法
  信息
  程序员是复制粘贴工具的人吗?还是…
  

网站调用新浪微博内容(一下梦做网站之首页调用文章内容的方法(一))

网站优化优采云 发表了文章 • 0 个评论 • 44 次浏览 • 2022-01-05 02:11 • 来自相关话题

  网站调用新浪微博内容(一下梦做网站之首页调用文章内容的方法(一))
  使用织梦做网站时,有时需要调用首页文章的内容。今天来讲解一下首页文章内容的调用方法。
  1、首页调用指向栏最新文章内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  注:以上代码typeid=2是指最新文章文章调用id=2的列。如果我们要调用文章的指定片段的内容,可以把上面的typeid改成aid,然后直接调用文章的id。
  特点:这段代码可以调用文章的所有内容,并保持文章的格式。
  2、调用特定文章的内容文章,可以使用如下代码:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  说明:aid=2,指的是文章调用文章id=2的内容。检查文章id的方法很简单。进入具体栏目,看到文章标题左边的数字是文章id,如下图:
  特点:此代码调用指定的特定文章文章,也调用整个内容,保持文章的格式。
  3、 以上两种方法调用了文章的全部内容,如果只调用了部分内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body function="cn_substr(@me,120)" /]
  {/dede:sql}
  说明:该函数="cn_substr(@me,120)" 代码用于限制显示内容的字数。
  特点:文章调用部分的代码可以保持文章的格式,可以调用文章中的图片、视频等其他元素。
  总结:以上是如何调用首页文章的内容。 查看全部

  网站调用新浪微博内容(一下梦做网站之首页调用文章内容的方法(一))
  使用织梦做网站时,有时需要调用首页文章的内容。今天来讲解一下首页文章内容的调用方法。
  1、首页调用指向栏最新文章内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where typeid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  注:以上代码typeid=2是指最新文章文章调用id=2的列。如果我们要调用文章的指定片段的内容,可以把上面的typeid改成aid,然后直接调用文章的id。
  特点:这段代码可以调用文章的所有内容,并保持文章的格式。
  2、调用特定文章的内容文章,可以使用如下代码:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body /]
  {/dede:sql}
  说明:aid=2,指的是文章调用文章id=2的内容。检查文章id的方法很简单。进入具体栏目,看到文章标题左边的数字是文章id,如下图:
  特点:此代码调用指定的特定文章文章,也调用整个内容,保持文章的格式。
  3、 以上两种方法调用了文章的全部内容,如果只调用了部分内容,代码如下:
  
  {dede:sql sql="SELECT aid,typeid,body FROM `dede_addonarticle` where aid=2 ORDER BY `aid` DESC LIMIT 0 , 1"}
  [field:body function="cn_substr(@me,120)" /]
  {/dede:sql}
  说明:该函数="cn_substr(@me,120)" 代码用于限制显示内容的字数。
  特点:文章调用部分的代码可以保持文章的格式,可以调用文章中的图片、视频等其他元素。
  总结:以上是如何调用首页文章的内容。

网站调用新浪微博内容(新浪微博官方与今日发布微博桌面客户端,快来下载)

网站优化优采云 发表了文章 • 0 个评论 • 62 次浏览 • 2022-01-05 02:10 • 来自相关话题

  网站调用新浪微博内容(新浪微博官方与今日发布微博桌面客户端,快来下载)
  通过微博,我们可以更快地获取信息,更快地发布信息。越来越多的朋友沉迷于微博。长期以来,我们需要在网页网站上登录微博才能玩微博。博客,步骤比较繁琐。如果有微博桌面客户端就好了。新浪微博今天正式发布了微博桌面客户端。如果您期待在桌面上更方便地玩新浪微博,请赶快下载吧!
  
  新浪微博桌面客户端的特点:
  1.界面多变程序体积小,界面简洁,内容丰富,浏览方便!
  2.易聊程序支持在线终端显示,好友列表群组浏览,不用担心,聊天内容别人看不到,因为是在私信里显示的!(嘿嘿,那个SB导演早点用这个工具应该不会有问题吧!)
  3、实时提醒与网页版微博相同。其他博主的转发、@、评论都会实时显示,重要信息不会错过!
  4.多彩换肤微博桌面客户端,支持多彩换肤,可以轻松选择自己喜欢的界面颜色
  5、便捷的信息发布桌面客户端有多种贴心的快捷键,可以轻松调用各种功能!同时支持拖拽图片发布微博、截图、微博,发布信息更方便!
  6、@联想输入也许你有很多朋友,名字很难记住,别怕,输入@+任意字符,它会立即匹配到相关朋友的名字!
  新浪微博桌面客户端下载:
  去官方下载| 直接下载(windows)| 其他系统
  还有很多第三方开发的微博桌面客户端。你最喜欢哪个?欢迎分享您的经验! 查看全部

  网站调用新浪微博内容(新浪微博官方与今日发布微博桌面客户端,快来下载)
  通过微博,我们可以更快地获取信息,更快地发布信息。越来越多的朋友沉迷于微博。长期以来,我们需要在网页网站上登录微博才能玩微博。博客,步骤比较繁琐。如果有微博桌面客户端就好了。新浪微博今天正式发布了微博桌面客户端。如果您期待在桌面上更方便地玩新浪微博,请赶快下载吧!
  
  新浪微博桌面客户端的特点:
  1.界面多变程序体积小,界面简洁,内容丰富,浏览方便!
  2.易聊程序支持在线终端显示,好友列表群组浏览,不用担心,聊天内容别人看不到,因为是在私信里显示的!(嘿嘿,那个SB导演早点用这个工具应该不会有问题吧!)
  3、实时提醒与网页版微博相同。其他博主的转发、@、评论都会实时显示,重要信息不会错过!
  4.多彩换肤微博桌面客户端,支持多彩换肤,可以轻松选择自己喜欢的界面颜色
  5、便捷的信息发布桌面客户端有多种贴心的快捷键,可以轻松调用各种功能!同时支持拖拽图片发布微博、截图、微博,发布信息更方便!
  6、@联想输入也许你有很多朋友,名字很难记住,别怕,输入@+任意字符,它会立即匹配到相关朋友的名字!
  新浪微博桌面客户端下载:
  去官方下载| 直接下载(windows)| 其他系统
  还有很多第三方开发的微博桌面客户端。你最喜欢哪个?欢迎分享您的经验!

网站调用新浪微博内容(非一个完整的图形化软件:下载新浪微博的软件)

网站优化优采云 发表了文章 • 0 个评论 • 58 次浏览 • 2022-01-04 03:22 • 来自相关话题

  网站调用新浪微博内容(非一个完整的图形化软件:下载新浪微博的软件)
  本文文章主要介绍编写一个调用新浪微博API发送微博的Java程序的方法。它只展示了一个基本的程序框架,而不是一个完整的图形软件:) 有需要的朋友可以参考以下
  首先需要下载新浪微博SDK,地址如下:
  下载后解压,然后打开myeclipse,新建一个项目,然后将解压的Import导入到项目中。如图:
  
  接下来,转到此 URL 以注册应用程序。有3种应用程序,在站点上选择应用程序,然后创建一个应用程序。应该填的都填上,确认就OK了。有两点需要注意:
  1.注册应用后,会有App Key和App Secret,接下来要用到。
  2、进入“我的申请”,选择:申请信息,
  点击“编辑”,注意有两个地址:“适用实际地址”要认真填写,我的是,注意地址后面不要有“/”。现在,记住这个地址,你下次会用到。
  现在转到myeclipse,src下有一个config.properties文件,编辑它
  client_ID 是应用密钥。
  client_SERCRET 是应用机密
  redirect_URI 是前面提到的地址:
  保存。
  接下来,我们发一条微博:
  examples下,weibo4j.examples.oauth2包下:OAuth4Code类,直接运行:出现应用授权页面,输入用户名和密码后,跳转到之前填写的redirect_URI页面。如果微博信息保存在浏览器中,会直接跳转到redirect_URI页面,不经过该页面。
  重定向到redirect_URI页面后,在URL地址栏中看到格式为redirect_URI?代码=xxxxxx。接下来复制代码的值,然后进入myeclipse的控制台输出,看到:
   code=https://api.weibo.com/oauth2/a ... Dcode Hit enter when it's done.[Enter]:
  接下来,将代码粘贴到 [Enter]: 后面。进入。你会看到很多输出信息。
  跳到最后看access_token,这就是我们需要的,记录一下。
  接下来发微博:
  weibo4j.examples.timeline包下,UpdateStatus类下/
  需要传入两个参数,所以我直接写了。代码如下:
   packageweibo4j.examples.timeline; importweibo4j.Timeline; importweibo4j.Weibo; importweibo4j.examples.oauth2.Log; importweibo4j.model.Status; importweibo4j.model.WeiboException; publicclassUpdateStatus { publicstaticvoidmain(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = newWeibo(); weibo.setToken(access_token); Timeline tm = newTimeline(); try{ Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch(WeiboException e) { e.printStackTrace(); } } } package weibo4j.examples.timeline; import weibo4j.Timeline; import weibo4j.Weibo; import weibo4j.examples.oauth2.Log; import weibo4j.model.Status; import weibo4j.model.WeiboException; public class UpdateStatus { public static void main(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = new Weibo(); weibo.setToken(access_token); Timeline tm = new Timeline(); try { Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch (WeiboException e) { e.printStackTrace(); } } }
  状态是您要发布的内容。
  此时,您可以发送微博了。
  有问题请留言。 !
  附上:
  有时,例如在使用其他微博账号(即与注册应用不同的账号)时,会出现一些错误。错误信息:
   {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} eibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18) {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} weibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18)
  对此的解决方法:还是在我的应用中,点击“应用信息”,“测试账号”,看到添加了一个测试账号,这时候就添加你要添加的账号的用户昵称发微博到,就OK了。
  以上是编写一个Java程序,调用新浪微博API发送微博的详细内容。详情请关注html中文网站其他相关文章! 查看全部

  网站调用新浪微博内容(非一个完整的图形化软件:下载新浪微博的软件)
  本文文章主要介绍编写一个调用新浪微博API发送微博的Java程序的方法。它只展示了一个基本的程序框架,而不是一个完整的图形软件:) 有需要的朋友可以参考以下
  首先需要下载新浪微博SDK,地址如下:
  下载后解压,然后打开myeclipse,新建一个项目,然后将解压的Import导入到项目中。如图:
  
  接下来,转到此 URL 以注册应用程序。有3种应用程序,在站点上选择应用程序,然后创建一个应用程序。应该填的都填上,确认就OK了。有两点需要注意:
  1.注册应用后,会有App Key和App Secret,接下来要用到。
  2、进入“我的申请”,选择:申请信息,
  点击“编辑”,注意有两个地址:“适用实际地址”要认真填写,我的是,注意地址后面不要有“/”。现在,记住这个地址,你下次会用到。
  现在转到myeclipse,src下有一个config.properties文件,编辑它
  client_ID 是应用密钥。
  client_SERCRET 是应用机密
  redirect_URI 是前面提到的地址:
  保存。
  接下来,我们发一条微博:
  examples下,weibo4j.examples.oauth2包下:OAuth4Code类,直接运行:出现应用授权页面,输入用户名和密码后,跳转到之前填写的redirect_URI页面。如果微博信息保存在浏览器中,会直接跳转到redirect_URI页面,不经过该页面。
  重定向到redirect_URI页面后,在URL地址栏中看到格式为redirect_URI?代码=xxxxxx。接下来复制代码的值,然后进入myeclipse的控制台输出,看到:
   code=https://api.weibo.com/oauth2/a ... Dcode Hit enter when it's done.[Enter]:
  接下来,将代码粘贴到 [Enter]: 后面。进入。你会看到很多输出信息。
  跳到最后看access_token,这就是我们需要的,记录一下。
  接下来发微博:
  weibo4j.examples.timeline包下,UpdateStatus类下/
  需要传入两个参数,所以我直接写了。代码如下:
   packageweibo4j.examples.timeline; importweibo4j.Timeline; importweibo4j.Weibo; importweibo4j.examples.oauth2.Log; importweibo4j.model.Status; importweibo4j.model.WeiboException; publicclassUpdateStatus { publicstaticvoidmain(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = newWeibo(); weibo.setToken(access_token); Timeline tm = newTimeline(); try{ Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch(WeiboException e) { e.printStackTrace(); } } } package weibo4j.examples.timeline; import weibo4j.Timeline; import weibo4j.Weibo; import weibo4j.examples.oauth2.Log; import weibo4j.model.Status; import weibo4j.model.WeiboException; public class UpdateStatus { public static void main(String[] args) { String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI"; String statuses = "此条微博来自星光发布系统发布"; Weibo weibo = new Weibo(); weibo.setToken(access_token); Timeline tm = new Timeline(); try { Status status = tm.UpdateStatus(statuses); Log.logInfo(status.toString()); } catch (WeiboException e) { e.printStackTrace(); } } }
  状态是您要发布的内容。
  此时,您可以发送微博了。
  有问题请留言。 !
  附上:
  有时,例如在使用其他微博账号(即与注册应用不同的账号)时,会出现一些错误。错误信息:
   {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} eibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18) {"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"} weibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why. error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414) at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372) at weibo4j.http.HttpClient.post(HttpClient.java:301) at weibo4j.http.HttpClient.post(HttpClient.java:286) at weibo4j.Timeline.UpdateStatus(Timeline.java:708) at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18)
  对此的解决方法:还是在我的应用中,点击“应用信息”,“测试账号”,看到添加了一个测试账号,这时候就添加你要添加的账号的用户昵称发微博到,就OK了。
  以上是编写一个Java程序,调用新浪微博API发送微博的详细内容。详情请关注html中文网站其他相关文章!

网站调用新浪微博内容(dedecms织梦TAG标签如何显示单个标签共有多少多少 )

网站优化优采云 发表了文章 • 0 个评论 • 49 次浏览 • 2022-01-01 18:05 • 来自相关话题

  网站调用新浪微博内容(dedecms织梦TAG标签如何显示单个标签共有多少多少
)
  3/3/201801:06:46
  上周,微信公众平台发布公告,要求开发者尽快将现有通过HTTP调用的服务切换为HTTPS调用。平台将于2017年12月30日停止支持HTTP调用,距离微信要求的截止日期还有三个月。开发者如何在三个月内快速将相关服务器升级为HTTPS加密?微信公众号API停止支持HTTP调用。微信公告正文:为保证数据传输安全,提高业务安全性,公众平台将不再支持HTTP调用。避免阴影
  
  一篇关于标签编写标准的文章文章
  12/9/200722:02:00
  Tag 是英文标签的中文翻译,也叫“自由分类”和“焦点分类”。 TAG的分类功能,标签确实对用户体验有很好的享受,可以快速找到相关的文章和信息。
  
  dedecms织梦TAG标签如何显示单个标签中有多少文章文章
  15/9/202015:02:18
  搭建网站服务器文章主要介绍dedecms织梦TAG标签如何显示单个标签有多少文章文章,有一定参考作用物超所值,有需要的朋友可以参考下。希望大家看完
  
  教你写一个愿意分享的公众号文章
  24/9/201514:28:00
  很多企业或微商在运营微信公众号时最常用的方法之一就是写文章,通过文章吸引用户注意力,使用文章来吸引用户积极转发和传播,但是如何写一篇文章的文章,让它愿意在公众号中分享呢?有人说,开通公众号运营首先要做的就是增加粉丝数量。错了,这是第一个目标,但是提高粉丝质量也很重要,否则会有粉丝
  
  WordPress博客小部件实现调用其他网站文章
  的方法
  8/12/201022:09:00
  一些使用 WordPress 的博主有时可能想在他们的 WordPress 博客中调用其他 WordPress 博客或其他 网站文章。通常博主首先想到的就是使用插件来实现这种传输。事实上,您不需要使用插件。 WordPress 博客的后端集成了提要调用。您可以拨打其他网站文章。
  
  如何快速原创有卷的文章文章
  微信公众号
  29/4/201511:01:00
  微信公众号越来越规范,腾讯官方也对原创文章有一些特殊的处理,比如文章原创保护和赞赏功能, 文章 评论等,很大程度上给了原创的作者更多的好处。
  
  如何用产品思维操作微信公众号?
  17/11/201511:01:00
  [文章总结]我觉得微信公众号的运营也需要产品思维。如何评价一个公众号是否“有吸引力”?我个人认为最有说服力的标准应该是活跃用户的数量和比例。说说我运营的公众号,名字
  
  公众号群发文章支持添加小程序
  22/4/201709:43:00
  微信官方平台发布消息:为方便用户在阅读文章时使用微信公众号提供的服务,公众号群发文章支持添加小程序卡片。
  
  网站建筑公司如何使用文章排水
  27/12/202112:16:35
  网站如何使用建筑公司文章排水来源:尚品中国|类型:网站建筑|网站建筑公司,你知道我们每天都在更新文章 目的?让百度收录,让访问
  
  如何引流公众号?
  16/1/201810:10:00
  如何引流公众号?这个问题有点宽泛,这里给大家一个答案...
  
  什么是标签页?如何优化标签页?
  27/4/202010:57:11
  什么是标签页?如何优化标签页?标签页是非常常用的,如果用得好,SEO效果很好,但是很多网站标签页使用不当,甚至可能产生负面影响,所以这是一个很好的问题。但是这个问题
   查看全部

  网站调用新浪微博内容(dedecms织梦TAG标签如何显示单个标签共有多少多少
)
  3/3/201801:06:46
  上周,微信公众平台发布公告,要求开发者尽快将现有通过HTTP调用的服务切换为HTTPS调用。平台将于2017年12月30日停止支持HTTP调用,距离微信要求的截止日期还有三个月。开发者如何在三个月内快速将相关服务器升级为HTTPS加密?微信公众号API停止支持HTTP调用。微信公告正文:为保证数据传输安全,提高业务安全性,公众平台将不再支持HTTP调用。避免阴影
  
  一篇关于标签编写标准的文章文章
  12/9/200722:02:00
  Tag 是英文标签的中文翻译,也叫“自由分类”和“焦点分类”。 TAG的分类功能,标签确实对用户体验有很好的享受,可以快速找到相关的文章和信息。
  
  dedecms织梦TAG标签如何显示单个标签中有多少文章文章
  15/9/202015:02:18
  搭建网站服务器文章主要介绍dedecms织梦TAG标签如何显示单个标签有多少文章文章,有一定参考作用物超所值,有需要的朋友可以参考下。希望大家看完
  
  教你写一个愿意分享的公众号文章
  24/9/201514:28:00
  很多企业或微商在运营微信公众号时最常用的方法之一就是写文章,通过文章吸引用户注意力,使用文章来吸引用户积极转发和传播,但是如何写一篇文章的文章,让它愿意在公众号中分享呢?有人说,开通公众号运营首先要做的就是增加粉丝数量。错了,这是第一个目标,但是提高粉丝质量也很重要,否则会有粉丝
  
  WordPress博客小部件实现调用其他网站文章
  的方法
  8/12/201022:09:00
  一些使用 WordPress 的博主有时可能想在他们的 WordPress 博客中调用其他 WordPress 博客或其他 网站文章。通常博主首先想到的就是使用插件来实现这种传输。事实上,您不需要使用插件。 WordPress 博客的后端集成了提要调用。您可以拨打其他网站文章。
  
  如何快速原创有卷的文章文章
  微信公众号
  29/4/201511:01:00
  微信公众号越来越规范,腾讯官方也对原创文章有一些特殊的处理,比如文章原创保护和赞赏功能, 文章 评论等,很大程度上给了原创的作者更多的好处。
  
  如何用产品思维操作微信公众号?
  17/11/201511:01:00
  [文章总结]我觉得微信公众号的运营也需要产品思维。如何评价一个公众号是否“有吸引力”?我个人认为最有说服力的标准应该是活跃用户的数量和比例。说说我运营的公众号,名字
  
  公众号群发文章支持添加小程序
  22/4/201709:43:00
  微信官方平台发布消息:为方便用户在阅读文章时使用微信公众号提供的服务,公众号群发文章支持添加小程序卡片。
  
  网站建筑公司如何使用文章排水
  27/12/202112:16:35
  网站如何使用建筑公司文章排水来源:尚品中国|类型:网站建筑|网站建筑公司,你知道我们每天都在更新文章 目的?让百度收录,让访问
  
  如何引流公众号?
  16/1/201810:10:00
  如何引流公众号?这个问题有点宽泛,这里给大家一个答案...
  
  什么是标签页?如何优化标签页?
  27/4/202010:57:11
  什么是标签页?如何优化标签页?标签页是非常常用的,如果用得好,SEO效果很好,但是很多网站标签页使用不当,甚至可能产生负面影响,所以这是一个很好的问题。但是这个问题
  

网站调用新浪微博内容(PHP中定义6服务端回调操作封装与微博开放平台通信获取用户AccessToken)

网站优化优采云 发表了文章 • 0 个评论 • 59 次浏览 • 2021-12-26 04:03 • 来自相关话题

  网站调用新浪微博内容(PHP中定义6服务端回调操作封装与微博开放平台通信获取用户AccessToken)
  接下来介绍一下基本结构:
  1 核心数据操作类
  这个类在Dao.class.php文件中,是插件的核心,负责从服务器获取数据
  /**
*
* 用户数据获取类
* @author 夏天
* @date 2015年6月28日
* @site http://www.xtwind.com
*
*/
class Dao{
/**
* 微博RPC操作对象
*/
private $client;
/**
* 用户标识
*/
private $mark;
/**
* 构造函数设置用户标识
*/
function __construct($state);
/**
* 返回用户标识
*/
public function getMark();

/**
* 启用插件
* @return 成功返回true,失败返回认证地址
*/
public function run();
/**
* 获取授权情况
* @return string 返回过期时间,未登录或者过期返回false
*/
public function getAuthOver();
/**
* 删除授权
* @return boolean
*/
public function delAuth();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 获取用户微博列表
* @return array
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl=null);
/**
* 删除微博
* @param int 微博ID
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论过
* @param int 微博ID
* @param string 评论内容
* @return array 评论相关数组
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的内容
*/
public function forwardWeibo($id,$text=null);
}
  2 插件实体类
  该类是插件的实体,定义在Plugins.class.php中,负责调用Dao类实现各种功能,包括输入输出、用户配置、授权管理
  /**
* 插件实体类
* @Author:Summer
* @data: 2015-06-28
* @site: http://www.xtwind.com
*/
class Plugins{
/**
* 数据获取类对象
*/
private $dao;
/**
* 插件显示别名
*/
private $slug = 'weibo-wall';
/**
* 插件页url
*/
private $plugUrl ;
/*
* 插件构造
* @param 用户数据操作类
*/
public function __construct(Dao $obj);
/**
* 启用插件,注册钩子,调用用户函数,删除授权,发表微博
* @param array 插件设置选项关联数组,key必须为对应的操作方法,该数组中的键会被注册为wordpress相应钩子
* @param array 需要过滤的动作,该数组中键不会被注册为钩子,但是会作为方法被调用,值为方法的参数
*/
public function run($arr1=null,$arr2=null);
/**
* 插件主页显示
*/
public function display_function();
/**
* 新文章同步发布微博
* @param int 文章ID
*/
public function publish_post($postID);
/**
* 删除文章同步删除微博
* @param int 文章ID
*/
public function before_delete_post($postID);
/**
* 收到评论同步到微博评论
* @param id 评论id
*/
public function comment_post($commentID);
/**
* 关注作者
*/
public function follow_author($userid);
/**
* 用户微博数据获取
*/
public function weiboOuput( $atts=null, $content = null );
/**
* 数据页面输出
*/
public function showWeibo();
/**
* 图片URL处理
* @param string
*/
private function getOriginalUrl($url);
/**
* 时间转换
* @param string
*/
private function Sec2Time($time);
/**
* 插件设置key获取
* @param string 需要设置的key
*/
private function setting_key($key,$func=false);
/**
* 插件设置value获取
* @param string 需要获取的value
*/
private function get_setting($key,$func=false);
/**
* 插件设置删除
*/
private function del_setting();
/**
* 提示信息
* @param string
*/
private function noticeMsg($msg);
}
  3 服务器认证操作
  该接口定义了用户认证所需的所有操作,包括获取授权、删除授权、查看授权等,定义在AuthDao.php
  /**
* 认证操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface AuthDao{
/**
* 设置用户AccessToken
* @return boolean
*/
public function setAccessToken();
/**
* 获取用户AccessToken
* @return String
*/
public function getAccessToken();
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  4 服务器端微博操作
  该接口定义了所有与用户微博操作相关的方法,包括发布微博、阅读微博、阅读信息、删除微博等,定义在 WeiboDao.php
  /**
* 微博操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface WeiboDao {
/**
* 获取用户微博信息列表
* @param int 获取数量
* @param int 类型过滤 0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。
* @return String
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return Array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl);
/**
* 删除微博
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论
* @param integer 微博ID
* @param string 评论内容
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的信息
*/
public function forwardWeibo($id,$text=null);
}
  5 服务器端数据提供接口
  该接口负责向客户端提供数据,以及客户端需要的一些操作,继承自微博操作接口,在APIDao.php中定义
  /**
* 对外提供服务类接口,继承于微博操作接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface DaoAPI extends WeiboDao{
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  6 服务器回调操作
  这种封装在获取用户的AccessToken后与微博开放平台通信获取回调操作
  class Callback {
/**
* 微博认证类对象
*/
private $authObj;
/**
* 构造函数
* @param AuthDaoImpl 微博认证对象
*/
public function __construct(AuthDaoImpl $obj);
/**
* 认证回调操作,保存AccessToken
* @return boolean
*/
public function callback();
}
  7 服务器应用入口
  入口主要是分发回调请求和创建RPC实例
  if($_GET['code']){
$keys = array(
'code' => $_GET['code'],
'redirect_uri' => APP_CALLBACK
);
$back = new Callback(new AuthDaoImpl($_GET['state'],$keys));
if($back->callback()){
header('Location: '.$_GET['state'].'/wp-admin/options-general.php?page=weibo-wall');
}
exit;
}
if($_GET['user']){
$server = new Yar_Server(new API($_GET['user']));
try{
$server->handle();
}catch(Exception $e){
echo "感谢您使用微博墙!";
}
}
  7 客户端应用入口
  此条目实例化插件实体类并启用插件
  $plu = new Plugins(new Dao(get_bloginfo( 'url' )));
$plu -> run(get_option('weibo_wall'),get_option('weibo_func'));
  8 总结
  整个流程是这样的,业务逻辑很简单,代码也很容易理解。在使用的过程中,我发现Yar真的很简单实用,而且是可以并行的。不过这里没有体现出来,可以做一些优化。插件的客户端依赖于Yar框架,是基于C语言开发的扩展。但是如果你没有框架扩展也没关系。我们已经给出了 Yar 的纯 PHP 实现。不用注意就可以使用,但还是推荐大家使用Yar。
  插件在设计时只提供了几个功能,但是有些人需要其他功能,我该怎么办?这方面我们也考虑过,所以在设计的时候插件的扩展性很好,但是需要有一定的PHP编程技巧。
  如何扩展他的功能?
  1.联系作者,告诉你你需要的功能
  2.作者开发了相应的数据API
  3.你在Dao.class.php本地调用API
  4.在Plugins.class.php中获取数据并执行相应的业务逻辑 查看全部

  网站调用新浪微博内容(PHP中定义6服务端回调操作封装与微博开放平台通信获取用户AccessToken)
  接下来介绍一下基本结构:
  1 核心数据操作类
  这个类在Dao.class.php文件中,是插件的核心,负责从服务器获取数据
  /**
*
* 用户数据获取类
* @author 夏天
* @date 2015年6月28日
* @site http://www.xtwind.com
*
*/
class Dao{
/**
* 微博RPC操作对象
*/
private $client;
/**
* 用户标识
*/
private $mark;
/**
* 构造函数设置用户标识
*/
function __construct($state);
/**
* 返回用户标识
*/
public function getMark();

/**
* 启用插件
* @return 成功返回true,失败返回认证地址
*/
public function run();
/**
* 获取授权情况
* @return string 返回过期时间,未登录或者过期返回false
*/
public function getAuthOver();
/**
* 删除授权
* @return boolean
*/
public function delAuth();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 获取用户微博列表
* @return array
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl=null);
/**
* 删除微博
* @param int 微博ID
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论过
* @param int 微博ID
* @param string 评论内容
* @return array 评论相关数组
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的内容
*/
public function forwardWeibo($id,$text=null);
}
  2 插件实体类
  该类是插件的实体,定义在Plugins.class.php中,负责调用Dao类实现各种功能,包括输入输出、用户配置、授权管理
  /**
* 插件实体类
* @Author:Summer
* @data: 2015-06-28
* @site: http://www.xtwind.com
*/
class Plugins{
/**
* 数据获取类对象
*/
private $dao;
/**
* 插件显示别名
*/
private $slug = 'weibo-wall';
/**
* 插件页url
*/
private $plugUrl ;
/*
* 插件构造
* @param 用户数据操作类
*/
public function __construct(Dao $obj);
/**
* 启用插件,注册钩子,调用用户函数,删除授权,发表微博
* @param array 插件设置选项关联数组,key必须为对应的操作方法,该数组中的键会被注册为wordpress相应钩子
* @param array 需要过滤的动作,该数组中键不会被注册为钩子,但是会作为方法被调用,值为方法的参数
*/
public function run($arr1=null,$arr2=null);
/**
* 插件主页显示
*/
public function display_function();
/**
* 新文章同步发布微博
* @param int 文章ID
*/
public function publish_post($postID);
/**
* 删除文章同步删除微博
* @param int 文章ID
*/
public function before_delete_post($postID);
/**
* 收到评论同步到微博评论
* @param id 评论id
*/
public function comment_post($commentID);
/**
* 关注作者
*/
public function follow_author($userid);
/**
* 用户微博数据获取
*/
public function weiboOuput( $atts=null, $content = null );
/**
* 数据页面输出
*/
public function showWeibo();
/**
* 图片URL处理
* @param string
*/
private function getOriginalUrl($url);
/**
* 时间转换
* @param string
*/
private function Sec2Time($time);
/**
* 插件设置key获取
* @param string 需要设置的key
*/
private function setting_key($key,$func=false);
/**
* 插件设置value获取
* @param string 需要获取的value
*/
private function get_setting($key,$func=false);
/**
* 插件设置删除
*/
private function del_setting();
/**
* 提示信息
* @param string
*/
private function noticeMsg($msg);
}
  3 服务器认证操作
  该接口定义了用户认证所需的所有操作,包括获取授权、删除授权、查看授权等,定义在AuthDao.php
  /**
* 认证操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface AuthDao{
/**
* 设置用户AccessToken
* @return boolean
*/
public function setAccessToken();
/**
* 获取用户AccessToken
* @return String
*/
public function getAccessToken();
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  4 服务器端微博操作
  该接口定义了所有与用户微博操作相关的方法,包括发布微博、阅读微博、阅读信息、删除微博等,定义在 WeiboDao.php
  /**
* 微博操作类接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface WeiboDao {
/**
* 获取用户微博信息列表
* @param int 获取数量
* @param int 类型过滤 0:全部、1:原创、2:图片、3:视频、4:音乐,默认为0。
* @return String
*/
public function getWeibo();
/**
* 获取用户基本信息
* @return Array
*/
public function getUser();
/**
* 发布微博
* @return Array 返回微博数据数组
*/
public function weiboPub($content,$imgUrl);
/**
* 删除微博
* @return Array 返回被删除微博数据数组
*/
public function weiboDel($weiboID);
/**
* 发布一条评论
* @param integer 微博ID
* @param string 评论内容
*/
public function sendComment($id,$comment);
/**
* 关注一个用户
* @param 用户ID或者名字
* @return 返回关注者信息
*/
public function followUser($user);
/**
* 转发微博
* @param int 微博id
* @param string 添加的信息
*/
public function forwardWeibo($id,$text=null);
}
  5 服务器端数据提供接口
  该接口负责向客户端提供数据,以及客户端需要的一些操作,继承自微博操作接口,在APIDao.php中定义
  /**
* 对外提供服务类接口,继承于微博操作接口
* @author 夏天
* @date 2015年6月18日
* @site http://www.xtwind.com
*/
interface DaoAPI extends WeiboDao{
/**
* 删除用户AccessToken
* @return boolean
*/
public function delAccessToken();
/**
* 判断用户AccessToken是否存在
* @return boolean
*/
public function isLogin();
/**
* 获取认证跳转url
* @return string
*/
public function getAuthUrl();
/**
* 授权过期时间
* @return string
*/
public function getAuthOver();
}
  6 服务器回调操作
  这种封装在获取用户的AccessToken后与微博开放平台通信获取回调操作
  class Callback {
/**
* 微博认证类对象
*/
private $authObj;
/**
* 构造函数
* @param AuthDaoImpl 微博认证对象
*/
public function __construct(AuthDaoImpl $obj);
/**
* 认证回调操作,保存AccessToken
* @return boolean
*/
public function callback();
}
  7 服务器应用入口
  入口主要是分发回调请求和创建RPC实例
  if($_GET['code']){
$keys = array(
'code' => $_GET['code'],
'redirect_uri' => APP_CALLBACK
);
$back = new Callback(new AuthDaoImpl($_GET['state'],$keys));
if($back->callback()){
header('Location: '.$_GET['state'].'/wp-admin/options-general.php?page=weibo-wall');
}
exit;
}
if($_GET['user']){
$server = new Yar_Server(new API($_GET['user']));
try{
$server->handle();
}catch(Exception $e){
echo "感谢您使用微博墙!";
}
}
  7 客户端应用入口
  此条目实例化插件实体类并启用插件
  $plu = new Plugins(new Dao(get_bloginfo( 'url' )));
$plu -> run(get_option('weibo_wall'),get_option('weibo_func'));
  8 总结
  整个流程是这样的,业务逻辑很简单,代码也很容易理解。在使用的过程中,我发现Yar真的很简单实用,而且是可以并行的。不过这里没有体现出来,可以做一些优化。插件的客户端依赖于Yar框架,是基于C语言开发的扩展。但是如果你没有框架扩展也没关系。我们已经给出了 Yar 的纯 PHP 实现。不用注意就可以使用,但还是推荐大家使用Yar。
  插件在设计时只提供了几个功能,但是有些人需要其他功能,我该怎么办?这方面我们也考虑过,所以在设计的时候插件的扩展性很好,但是需要有一定的PHP编程技巧。
  如何扩展他的功能?
  1.联系作者,告诉你你需要的功能
  2.作者开发了相应的数据API
  3.你在Dao.class.php本地调用API
  4.在Plugins.class.php中获取数据并执行相应的业务逻辑

网站调用新浪微博内容(访问,用自己的新浪微博登录以后,先点击文档)

网站优化优采云 发表了文章 • 0 个评论 • 56 次浏览 • 2021-12-24 14:11 • 来自相关话题

  网站调用新浪微博内容(访问,用自己的新浪微博登录以后,先点击文档)
  (注:这是我个人用户写的例子,如果是企业用户,会略有不同)
  ①:首先要确保你有一个新浪微博账号。如果您没有,请注册新浪微博。注册成功后可以直接访问或登录新浪微博,点击上面的申请,然后点击蓝色区域(微博开发平台,我也想做开发者)
  ②:访问,用自己的新浪微博登录后,先点击文档,看文档下方的新手指南,看懂的话选择管理中心。
  ③:选择你要开发的类型是应用还是网站。
  ④:应用分为这几种。这是我目前经营的情况。新浪未来有可能会增加类型。总之,选择你要开发的类型
  ⑤:现在以站点中的应用为例。一开始,我们开发了一个招聘应用程序。上线后可在应用内搜索。
  现在我填写一些测试信息,如图:
  然后点击确定,应用程序就创建好了
  ⑥:创建后会跳转到
  在这里,其实我们主要是拿到了这个App Key和App Secret,后续的开发基本都是用这个key和Secret来调整界面的。
  ⑦:
  红框提示信息必须一步一步完成。这需要填写大量的开发者身份认证信息。
  ⑧:因为上面红框的限制,我们就拿其他现成的例子来说明和招募申请吧。进入各个应用的管理界面,点击应用信息,会出现基本信息、高级信息和测试账号
  基本信息:它允许您改进您的应用程序的某些内容,上传图片,简介等。
  高级信息:需要填写授权回调页面和取消授权回调页面。此部分主要用于授权开发,方便日后授权
  测试账号:本应用上线前,只允许测试15个微博账号,即需要手动添加一些其他账号进行测试,点击编辑,会出现添加微博账号的界面。您只能通过微博登录。您可以通过微博账号的显示名称查找和添加。例如:我以我的账户为例,将我的账户添加为测试账户,点击添加,稍后保存。
  ⑨:点击文档,访问下面的OAuth2.0授权认证,仔细阅读里面的信息,因为授权特别麻烦,仔细想想,动动脑子
  然后选择OAuth2.0 相关资源。我自己做的是PHP开发,所以选择了PHP版本的SDK。
  点击之后,就是之前废弃的SDK DEMO,一直没有更新。新地址是,下载最新的DEMO,里面有对应的更新界面。
  注意:这里的DEMO只是一个测试示例。您可以模仿他们写的内容并将其放在您自己的服务器中。其实所有调用的接口都封装在核心类 saetv2.ex.class.php 文件中间。
  下图红色部分为下载的压缩包,文件列表为压缩包内的文件。
  下图中的config.php文件就是配置
  WB_AKEY和WB_SKEY是在创建应用或网站时生成的,如下图
  WB_CALLBACK_URL:是第八条提到的高级信息中的授权回调地址。
  配置完成后,放到服务器上,就OK了。
  然后可以参考DEMO中的例子进行应用开发。调用的一些接口会写在 saetv2.ex.class.php 文件中。可以参考文档下的API文档接口进行开发。
  注意:很多高级接口无法调用。您需要提交审核,然后申请许可。这个 URL 是接口错误代码。说明:如果有错误,可以查看返回的错误号,找到对应的问题,然后解决。不清楚的可以查看问答系统( 查看全部

  网站调用新浪微博内容(访问,用自己的新浪微博登录以后,先点击文档)
  (注:这是我个人用户写的例子,如果是企业用户,会略有不同)
  ①:首先要确保你有一个新浪微博账号。如果您没有,请注册新浪微博。注册成功后可以直接访问或登录新浪微博,点击上面的申请,然后点击蓝色区域(微博开发平台,我也想做开发者)
  ②:访问,用自己的新浪微博登录后,先点击文档,看文档下方的新手指南,看懂的话选择管理中心。
  ③:选择你要开发的类型是应用还是网站。
  ④:应用分为这几种。这是我目前经营的情况。新浪未来有可能会增加类型。总之,选择你要开发的类型
  ⑤:现在以站点中的应用为例。一开始,我们开发了一个招聘应用程序。上线后可在应用内搜索。
  现在我填写一些测试信息,如图:
  然后点击确定,应用程序就创建好了
  ⑥:创建后会跳转到
  在这里,其实我们主要是拿到了这个App Key和App Secret,后续的开发基本都是用这个key和Secret来调整界面的。
  ⑦:
  红框提示信息必须一步一步完成。这需要填写大量的开发者身份认证信息。
  ⑧:因为上面红框的限制,我们就拿其他现成的例子来说明和招募申请吧。进入各个应用的管理界面,点击应用信息,会出现基本信息、高级信息和测试账号
  基本信息:它允许您改进您的应用程序的某些内容,上传图片,简介等。
  高级信息:需要填写授权回调页面和取消授权回调页面。此部分主要用于授权开发,方便日后授权
  测试账号:本应用上线前,只允许测试15个微博账号,即需要手动添加一些其他账号进行测试,点击编辑,会出现添加微博账号的界面。您只能通过微博登录。您可以通过微博账号的显示名称查找和添加。例如:我以我的账户为例,将我的账户添加为测试账户,点击添加,稍后保存。
  ⑨:点击文档,访问下面的OAuth2.0授权认证,仔细阅读里面的信息,因为授权特别麻烦,仔细想想,动动脑子
  然后选择OAuth2.0 相关资源。我自己做的是PHP开发,所以选择了PHP版本的SDK。
  点击之后,就是之前废弃的SDK DEMO,一直没有更新。新地址是,下载最新的DEMO,里面有对应的更新界面。
  注意:这里的DEMO只是一个测试示例。您可以模仿他们写的内容并将其放在您自己的服务器中。其实所有调用的接口都封装在核心类 saetv2.ex.class.php 文件中间。
  下图红色部分为下载的压缩包,文件列表为压缩包内的文件。
  下图中的config.php文件就是配置
  WB_AKEY和WB_SKEY是在创建应用或网站时生成的,如下图
  WB_CALLBACK_URL:是第八条提到的高级信息中的授权回调地址。
  配置完成后,放到服务器上,就OK了。
  然后可以参考DEMO中的例子进行应用开发。调用的一些接口会写在 saetv2.ex.class.php 文件中。可以参考文档下的API文档接口进行开发。
  注意:很多高级接口无法调用。您需要提交审核,然后申请许可。这个 URL 是接口错误代码。说明:如果有错误,可以查看返回的错误号,找到对应的问题,然后解决。不清楚的可以查看问答系统(

网站调用新浪微博内容(新浪微博api接口推荐活动:更多优惠gt(组图))

网站优化优采云 发表了文章 • 0 个评论 • 40 次浏览 • 2021-12-23 18:11 • 来自相关话题

  网站调用新浪微博内容(新浪微博api接口推荐活动:更多优惠gt(组图))
  阿里云&gt;云栖社区&gt;主题地图&gt;D&gt;调用新浪微博API接口
  
  推荐活动:
  更多优惠&gt;
  当前话题:调用新浪微博api接口加入采集
  相关话题:
  调用新浪微博api接口相关博客查看更多博客
  如何创建新浪微博应用并获取访问令牌
  
  
  作者:jerrywangsap1566 人浏览评论:03年前
  前提是你必须先有一个新浪微博账号。打开网页%E9%A6%96%E9%A1%B5 点击新手指南-&gt;开发者页面:会自动跳转到页面:,点击
  阅读全文
  关于访问新浪微博第三方登录
  
  
  作者:小天科技 945人浏览评论:04年前
  最近在联合第三方平台做一个登录访问,第一时间联系开放平台,在这里做个笔记。开发前的准备工作如下: 1、注册新浪微博2、访问新浪微博开发平台,如果是企业,申请企业接入并提交相关资料审核;如果是个人发展
  阅读全文
  Win10人网应用将关闭与新浪微博关联
  
  
  作者:青山无名 904人浏览评论:04年前
  从Win8时代开始,系统内置的通讯录应用可以关联​​新浪微博,不过现在好像不再支持了。据悉,微软通过电子邮件向用户表示,人民网应用将不再支持与新浪微博账号的关联。原因是新浪微博原有的API接口已经调整,包括人民网在内的其他相关应用已经无法调用。界面。这意味着
  阅读全文
  使用新浪微博API的搜索界面,让微博排名靠前
  
  
  作者:郑云1802人浏览评论:05年前
  郑云20100929申请入口:简单介绍一下我们的榜单和新浪自家的热门转发榜单的区别:微博转发会忽略名人推文,更关注草根推文,更关注社会民生推文,屏蔽非营养推文. 瑞微博排名将汇总以新浪微博为首的国内主要微博网站
  阅读全文
  新浪微博开发(上)
  
  
  作者:xumaojun1002 浏览评论人数:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  新浪微博开发(上)
  
  
  作者:nothingfinal1071 人浏览评论:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  开放平台:iOS版新浪微博
  
  
  作者:于书义 845人浏览评论:09年前
  简介:新浪微博几乎开放了所有平台数据的所有API接口。因此,很多优秀的第三方微博客户端在功能上都是非常全面的。通过SNS分享和推广的方式已经在App世界中使用了。它很常见,甚至随处可见。本文主要介绍App与新浪微博的关系。参考:1.开发
  阅读全文
  新浪微博 Python 客户端接口 OAuth2
  
  
  作者:方贝工作室 745人浏览评论:09年前
  关键字:Python Oauth2 微博新浪微博#!/usr/bin/env python # -*- 编码:utf-8 -*- __version__ ='1.04' __author__ ='廖雪飞
  阅读全文
  调用新浪微博api接口相关问答提问
  iOS开发调用新浪微博界面问题
  
  
  作者:杨东方 818人浏览评论:15年前
  小弟正在做一个模块,调用新浪微博api,需要点击一个按钮才能进入我们公司的微博首页。用户可以与公司的微博进行互动,如发帖回复、转发等,这能实现吗?如果是这样,我该怎么办?以及调用新浪微博API时应该添加哪些新浪提供的类?参考文档上没有说明
  阅读全文 查看全部

  网站调用新浪微博内容(新浪微博api接口推荐活动:更多优惠gt(组图))
  阿里云&gt;云栖社区&gt;主题地图&gt;D&gt;调用新浪微博API接口
  
  推荐活动:
  更多优惠&gt;
  当前话题:调用新浪微博api接口加入采集
  相关话题:
  调用新浪微博api接口相关博客查看更多博客
  如何创建新浪微博应用并获取访问令牌
  
  
  作者:jerrywangsap1566 人浏览评论:03年前
  前提是你必须先有一个新浪微博账号。打开网页%E9%A6%96%E9%A1%B5 点击新手指南-&gt;开发者页面:会自动跳转到页面:,点击
  阅读全文
  关于访问新浪微博第三方登录
  
  
  作者:小天科技 945人浏览评论:04年前
  最近在联合第三方平台做一个登录访问,第一时间联系开放平台,在这里做个笔记。开发前的准备工作如下: 1、注册新浪微博2、访问新浪微博开发平台,如果是企业,申请企业接入并提交相关资料审核;如果是个人发展
  阅读全文
  Win10人网应用将关闭与新浪微博关联
  
  
  作者:青山无名 904人浏览评论:04年前
  从Win8时代开始,系统内置的通讯录应用可以关联​​新浪微博,不过现在好像不再支持了。据悉,微软通过电子邮件向用户表示,人民网应用将不再支持与新浪微博账号的关联。原因是新浪微博原有的API接口已经调整,包括人民网在内的其他相关应用已经无法调用。界面。这意味着
  阅读全文
  使用新浪微博API的搜索界面,让微博排名靠前
  
  
  作者:郑云1802人浏览评论:05年前
  郑云20100929申请入口:简单介绍一下我们的榜单和新浪自家的热门转发榜单的区别:微博转发会忽略名人推文,更关注草根推文,更关注社会民生推文,屏蔽非营养推文. 瑞微博排名将汇总以新浪微博为首的国内主要微博网站
  阅读全文
  新浪微博开发(上)
  
  
  作者:xumaojun1002 浏览评论人数:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  新浪微博开发(上)
  
  
  作者:nothingfinal1071 人浏览评论:08年前
  这几天一直在研究新浪微博的授权验证。我在论坛上贴了一个例子,找到了相关的博客文章。. 我以为很容易理解,但过了很久,我还是不知所措。. 后来想了想,其实别人提供的只是一些接口和方法,没有认真研究授权过程,所以对代码中那些怪异的方法比较适应。
  阅读全文
  开放平台:iOS版新浪微博
  
  
  作者:于书义 845人浏览评论:09年前
  简介:新浪微博几乎开放了所有平台数据的所有API接口。因此,很多优秀的第三方微博客户端在功能上都是非常全面的。通过SNS分享和推广的方式已经在App世界中使用了。它很常见,甚至随处可见。本文主要介绍App与新浪微博的关系。参考:1.开发
  阅读全文
  新浪微博 Python 客户端接口 OAuth2
  
  
  作者:方贝工作室 745人浏览评论:09年前
  关键字:Python Oauth2 微博新浪微博#!/usr/bin/env python # -*- 编码:utf-8 -*- __version__ ='1.04' __author__ ='廖雪飞
  阅读全文
  调用新浪微博api接口相关问答提问
  iOS开发调用新浪微博界面问题
  
  
  作者:杨东方 818人浏览评论:15年前
  小弟正在做一个模块,调用新浪微博api,需要点击一个按钮才能进入我们公司的微博首页。用户可以与公司的微博进行互动,如发帖回复、转发等,这能实现吗?如果是这样,我该怎么办?以及调用新浪微博API时应该添加哪些新浪提供的类?参考文档上没有说明
  阅读全文

网站调用新浪微博内容(国家网络信息办公室投诉反馈平台:京东新闻分享被篡改)

网站优化优采云 发表了文章 • 0 个评论 • 56 次浏览 • 2021-12-23 06:00 • 来自相关话题

  网站调用新浪微博内容(国家网络信息办公室投诉反馈平台:京东新闻分享被篡改)
  网站调用新浪微博内容分享工具导致的被篡改。请访问国家网络信息办公室投诉反馈平台:国家网络信息办公室建议您自行联系新浪微博客服帮助解决此问题。相关工作正在进行中,我们将尽快与您取得联系。
  1.感谢您对京东新闻微博的转发行为!2.帮我们看看京东客服会不会处理这件事情。
  京东我买过以后邮坏了,售后巨坑,而且不改错别字。垃圾京东。
  京东新闻分享服务,
  写了两条新闻微博,同一家网站,不同的新闻机构,经过多次点击转发,投诉,不同网站同样未回复,
  我找不到京东新闻分享了在哪里点我不会,但是我可以点击打开,在网站首页就可以看到。但是我想要的转发完成条件是新浪微博能直接发送,然后指定于你相关的转发,而不是在同一家网站选中。
  看你该网站到底是通过哪种方式推广,很多不正规的小网站,也是通过发布广告的形式,但是,正规的网站都是采用广告,非广告的形式推广产品,
  京东新闻分享导致被篡改,建议联系客服反馈。
  京东新闻是经过投诉的,可能是网站经营方的意识差不专业。京东这个分享是有问题的,京东新闻分享是靠优惠券的,他们的优惠券肯定没有钱抢到手快,有钱可以在别的网站分享,干嘛这个钱先在我京东产品上浪费?不知道京东自己有钱可以做关键词新闻,客服却一直做不到实时回复,不解决事情?我只是想先处理一下京东产品分享后再拿到我该拿到的的优惠券。却一直这样对待客户,希望京东管管京东产品的分享,安全可靠有效率的分享。 查看全部

  网站调用新浪微博内容(国家网络信息办公室投诉反馈平台:京东新闻分享被篡改)
  网站调用新浪微博内容分享工具导致的被篡改。请访问国家网络信息办公室投诉反馈平台:国家网络信息办公室建议您自行联系新浪微博客服帮助解决此问题。相关工作正在进行中,我们将尽快与您取得联系。
  1.感谢您对京东新闻微博的转发行为!2.帮我们看看京东客服会不会处理这件事情。
  京东我买过以后邮坏了,售后巨坑,而且不改错别字。垃圾京东。
  京东新闻分享服务,
  写了两条新闻微博,同一家网站,不同的新闻机构,经过多次点击转发,投诉,不同网站同样未回复,
  我找不到京东新闻分享了在哪里点我不会,但是我可以点击打开,在网站首页就可以看到。但是我想要的转发完成条件是新浪微博能直接发送,然后指定于你相关的转发,而不是在同一家网站选中。
  看你该网站到底是通过哪种方式推广,很多不正规的小网站,也是通过发布广告的形式,但是,正规的网站都是采用广告,非广告的形式推广产品,
  京东新闻分享导致被篡改,建议联系客服反馈。
  京东新闻是经过投诉的,可能是网站经营方的意识差不专业。京东这个分享是有问题的,京东新闻分享是靠优惠券的,他们的优惠券肯定没有钱抢到手快,有钱可以在别的网站分享,干嘛这个钱先在我京东产品上浪费?不知道京东自己有钱可以做关键词新闻,客服却一直做不到实时回复,不解决事情?我只是想先处理一下京东产品分享后再拿到我该拿到的的优惠券。却一直这样对待客户,希望京东管管京东产品的分享,安全可靠有效率的分享。

网站调用新浪微博内容(微博客,你和转载者都会承担侵权责任吗?)

网站优化优采云 发表了文章 • 0 个评论 • 58 次浏览 • 2021-12-22 07:01 • 来自相关话题

  网站调用新浪微博内容(微博客,你和转载者都会承担侵权责任吗?)
  网站调用新浪微博内容,只要不转载进自己网站,都不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。即便是调用新浪微博内容,只要不转载进自己网站,也是不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。
  不会。微博客只是提供一个平台供其他人传播你的原创图片,只要你的这些原创图片合法,不属于微博客擅自上传,那就没有问题。
  无限。你自己原创,沒被人自己用就行。
  肯定会啊...最好不要直接使用在大陆境内媒体上发表的图片哦...否则被追责的话就惨了
  已经被新浪认定为恶意侵权了在国内
  新浪的事就是新浪的事,新浪上面无论什么内容,随便在国内公开发表出去都是属于侵权的。其他平台上(除了腾讯微博和腾讯微博首页)如果有你要发布的内容,可以在别的平台上用你要发布的内容重新发表。内容在一定时间内没有重新发布,但是内容确实也不合规可以请求新浪的解释,并且期间会承担相应的侵权责任。
  没有侵权,只有归责权利人理解问题。你发了个微博在你的网站上就可以自己用。别人改了你的网站上的图片但是没改名字(但是这个却是法律明文规定),你的网站就不必承担法律责任。你没收别人钱只说明两件事:1.版权法不保护无所作为的人;2.在未经对方同意的情况下,不能更改对方主体信息,否则对方提出侵权要求,对方可以要求你承担侵权责任。 查看全部

  网站调用新浪微博内容(微博客,你和转载者都会承担侵权责任吗?)
  网站调用新浪微博内容,只要不转载进自己网站,都不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。即便是调用新浪微博内容,只要不转载进自己网站,也是不会受到微博客的侵权。但是转载到微博客,你和转载者都会承担被追究侵权责任。
  不会。微博客只是提供一个平台供其他人传播你的原创图片,只要你的这些原创图片合法,不属于微博客擅自上传,那就没有问题。
  无限。你自己原创,沒被人自己用就行。
  肯定会啊...最好不要直接使用在大陆境内媒体上发表的图片哦...否则被追责的话就惨了
  已经被新浪认定为恶意侵权了在国内
  新浪的事就是新浪的事,新浪上面无论什么内容,随便在国内公开发表出去都是属于侵权的。其他平台上(除了腾讯微博和腾讯微博首页)如果有你要发布的内容,可以在别的平台上用你要发布的内容重新发表。内容在一定时间内没有重新发布,但是内容确实也不合规可以请求新浪的解释,并且期间会承担相应的侵权责任。
  没有侵权,只有归责权利人理解问题。你发了个微博在你的网站上就可以自己用。别人改了你的网站上的图片但是没改名字(但是这个却是法律明文规定),你的网站就不必承担法律责任。你没收别人钱只说明两件事:1.版权法不保护无所作为的人;2.在未经对方同意的情况下,不能更改对方主体信息,否则对方提出侵权要求,对方可以要求你承担侵权责任。

网站调用新浪微博内容(1.配置文件下载SDK.Json和RestSharp两个程序集)

网站优化优采云 发表了文章 • 0 个评论 • 44 次浏览 • 2021-12-21 00:03 • 来自相关话题

  网站调用新浪微博内容(1.配置文件下载SDK.Json和RestSharp两个程序集)
  1. 先下载SDK()。 SDK 依赖于两个程序集,Newtonsoft.Json 和 RestSharp。具体请参考使用RestSharp库消费Restful Service。主要有QzoneContext(QQ登录的上下文数据)和QOpenClient(QQ互联API入口)两个类,其他类主要是模型和配置类。
  2.在配置文件中加入如下内容:
  
   1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  
  3.我这里使用的是MVC模式,后台代码如下:
  
   1 public ActionResult Index()
2 {
3 //this.Session[RETURNURL] = returnUrl;
4 var context = new QzoneContext();
5 string state = Guid.NewGuid().ToString().Replace("-", "");
6 Session["requeststate"] = state;
7 string scope = "get_user_info,add_share,list_album,upload_pic,check_page_fans,add_t,add_pic_t,del_t,get_repost_list,get_info,get_other_info,get_fanslist,get_idolist,add_idol,del_idol,add_one_blog,add_topic,get_tenpay_addr";
8 model.authenticationUrl = context.GetAuthorizationUrl(state, scope);
9
10 return View(model);
11 }
  
  首页如下:
  
  @model dynamic
@{
Layout = null;
}


Index

用户名:<br />
密 码:<br />



~/Images/qq.pngQQ账号登录

  
  测试界面如下:点击实现QQ登录
  
  虽然通过这种方式实现了登录,但只能使用自己开发者的QQ账号登录。如果您想使用任何QQ账号登录,应用程序需要通过TX审核。 . .
  注意:
  如果是本地测试,修改IIS发布的网站端口为80,修改C:\Windows\System32\drivers\etc中的hosts文件,在IIS和对应的域名:
  
  转移: 查看全部

  网站调用新浪微博内容(1.配置文件下载SDK.Json和RestSharp两个程序集)
  1. 先下载SDK()。 SDK 依赖于两个程序集,Newtonsoft.Json 和 RestSharp。具体请参考使用RestSharp库消费Restful Service。主要有QzoneContext(QQ登录的上下文数据)和QOpenClient(QQ互联API入口)两个类,其他类主要是模型和配置类。
  2.在配置文件中加入如下内容:
  
   1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
  
  3.我这里使用的是MVC模式,后台代码如下:
  
   1 public ActionResult Index()
2 {
3 //this.Session[RETURNURL] = returnUrl;
4 var context = new QzoneContext();
5 string state = Guid.NewGuid().ToString().Replace("-", "");
6 Session["requeststate"] = state;
7 string scope = "get_user_info,add_share,list_album,upload_pic,check_page_fans,add_t,add_pic_t,del_t,get_repost_list,get_info,get_other_info,get_fanslist,get_idolist,add_idol,del_idol,add_one_blog,add_topic,get_tenpay_addr";
8 model.authenticationUrl = context.GetAuthorizationUrl(state, scope);
9
10 return View(model);
11 }
  
  首页如下:
  
  @model dynamic
@{
Layout = null;
}


Index

用户名:<br />
密 码:<br />



~/Images/qq.pngQQ账号登录

  
  测试界面如下:点击实现QQ登录
  
  虽然通过这种方式实现了登录,但只能使用自己开发者的QQ账号登录。如果您想使用任何QQ账号登录,应用程序需要通过TX审核。 . .
  注意:
  如果是本地测试,修改IIS发布的网站端口为80,修改C:\Windows\System32\drivers\etc中的hosts文件,在IIS和对应的域名:
  
  转移:

网站调用新浪微博内容(新浪微博开放平台API调用和TWITTER接口一样的限定规则)

网站优化优采云 发表了文章 • 0 个评论 • 42 次浏览 • 2021-12-19 06:17 • 来自相关话题

  网站调用新浪微博内容(新浪微博开放平台API调用和TWITTER接口一样的限定规则)
  新浪微博开放平台API调用与TWITTER接口相同,均以小时为单位进行限制和限制。
  他有两个限制原则
  1.用户不按IP限制登录,每小时1000次
  2. 用户以基于用户的限制登录,每小时1000次
  如果应用是用户未登录,则IP被限制。建议登录破解瓶颈,否则不讨论。
  新浪给出了具体限制
  开发者可以通过 rate_limit_status 接口查看调用频率
  rate_limit_status 接口文档
  接口返回如下信息
  数组 ([remaining_hits] =&gt; 999 [hourly_limit]=&gt; 1000 [reset_time_in_seconds] =&gt;2717 [reset_time] =&gt; 12 月 14 日星期二 17:00:00 +0800 2010)
  代表
  剩余数量为999次,
  每小时限制1000次,
  计数器复位的剩余时间为 2717 秒,
  下次重置时间为17:00。
  这样的调用频率对于非授权的小应用来说已经不够用了。最简单的方法是使用多个账号和多个APP_KEY,相当于做一个账号轮询。
  首先,多注册几个微博账号,将它们存储在一个数组中,每次随机调用一个,这样可以轻松使限制达到3000。
  $wb_id = array('|密码','|密码','|密码');
  列表($wb_name,$wb_password)=explode(“|”,$wb_id[array_rand($wb_id)]);
  如果你用同样的方法列出几个APP_KEY并重复组合,那么就会有更多。比如2个APP_KEY,3个账号,上限可以达到6000。
  我个人用了3个APP_KEY,4个账号,每小时1.2万就够了。
  快速注册微博账号的另一种方式
  第一步,
  去gmail注册一个长账号,多长时间?反正越长越好,一个原则信比你想注册的微博账号长
  例如
  第二步,
  使用此账号在新浪注册
  第一次使用
  第二次使用
  第三次使用
  ....
  以此类推,一个邮箱可以注册多个新浪微博。无需来回重新注册邮箱。 查看全部

  网站调用新浪微博内容(新浪微博开放平台API调用和TWITTER接口一样的限定规则)
  新浪微博开放平台API调用与TWITTER接口相同,均以小时为单位进行限制和限制。
  他有两个限制原则
  1.用户不按IP限制登录,每小时1000次
  2. 用户以基于用户的限制登录,每小时1000次
  如果应用是用户未登录,则IP被限制。建议登录破解瓶颈,否则不讨论。
  新浪给出了具体限制
  开发者可以通过 rate_limit_status 接口查看调用频率
  rate_limit_status 接口文档
  接口返回如下信息
  数组 ([remaining_hits] =&gt; 999 [hourly_limit]=&gt; 1000 [reset_time_in_seconds] =&gt;2717 [reset_time] =&gt; 12 月 14 日星期二 17:00:00 +0800 2010)
  代表
  剩余数量为999次,
  每小时限制1000次,
  计数器复位的剩余时间为 2717 秒,
  下次重置时间为17:00。
  这样的调用频率对于非授权的小应用来说已经不够用了。最简单的方法是使用多个账号和多个APP_KEY,相当于做一个账号轮询。
  首先,多注册几个微博账号,将它们存储在一个数组中,每次随机调用一个,这样可以轻松使限制达到3000。
  $wb_id = array('|密码','|密码','|密码');
  列表($wb_name,$wb_password)=explode(“|”,$wb_id[array_rand($wb_id)]);
  如果你用同样的方法列出几个APP_KEY并重复组合,那么就会有更多。比如2个APP_KEY,3个账号,上限可以达到6000。
  我个人用了3个APP_KEY,4个账号,每小时1.2万就够了。
  快速注册微博账号的另一种方式
  第一步,
  去gmail注册一个长账号,多长时间?反正越长越好,一个原则信比你想注册的微博账号长
  例如
  第二步,
  使用此账号在新浪注册
  第一次使用
  第二次使用
  第三次使用
  ....
  以此类推,一个邮箱可以注册多个新浪微博。无需来回重新注册邮箱。

网站调用新浪微博内容(新浪微博的开发api,公示如下公示)

网站优化优采云 发表了文章 • 0 个评论 • 36 次浏览 • 2021-12-19 06:15 • 来自相关话题

  网站调用新浪微博内容(新浪微博的开发api,公示如下公示)
  注:本文代码无效,请勿模仿,其他方法请参考scribe方法
  最近在研究新浪微博的开发api,尝试在一些客户端应用中调用相应的api来发送新浪微博。经过一番尝试,终于成功了。几个关键点和相应的demo发布如下,供大家理解。
  在本文中,我主要演示如何通过用户名/密码连接到新浪微博,然后读取最新的微博信息,最后演示如何发送一个简单的微博,其他可以通过相应的微博api进行处理,有这里没有仔细深入。
  首先要申请开发者授权,也就是要在新浪上申请。直接通过地址:用微博登录后,创建一个应用程序即可。创建应用的目的是获取对应的app Key和app Secret。app key会用到后面的主要API中,方便新浪追踪请求的来源。具体流程请自行google。
  应用完成后,我们将开始我们的api之旅。在本文中,我们没有使用官方的java sdk,因为主要目的是一个简单的演示。如果是应用开发,还是可以下载对应的java sdk应用。查看示例以了解如何拨打电话。
  本文使用httpclient。如果使用maven,可以使用groupId作为commons-httpclient,使用artifactId作为commons-httpclient,将其导入到项目中。其次,为了方便对返回数据的分析,使用了一个JSON组件(fastjson)来解析json字符串。
  获取应用授权,即允许应用访问用户的相应信息(用户名、密码除外)
  由于新浪使用的是auth2.0,所以整个登录过程分为两部分。一部分是登录授权,它允许我们的应用访问指定用户的相应信息。这里的信息不包括用户名和密码。. 在类网页应用中,即通过弹出新浪登录框,用户输入用户名和密码,授权应用使用。新浪通过验证后,会返回到我们的应用所在的主界面。第二部分是获取对应的token,相当于用户会话,以便在后续操作中可以使用这个token进行数据访问。
  申请授权地址为:,完整代码如下:
  
PostMethod postMethod = new PostMethod("https://api.weibo.com/oauth2/authorize");
postMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
postMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //oauth2 回调地址
postMethod.addParameter("response_type", "code");//请求code信息
postMethod.addParameter("action", "submit");//表示授权访问
postMethod.addParameter("userId", "xxxx"); //微博帐号
postMethod.addParameter("passwd", "xxxx"); //帐号密码
client.executeMethod(postMethod);
String url = postMethod.getResponseHeader("location").getValue();//取得重定向的地址信息
/** 以下为获取新浪返回的code信息 */
String params = url.substring(url.lastIndexOf("?") + 1);
Map p = parseQueryString(params);
String code = p.get("code")[0];
//取得code数据
System.out.println("code->" + code);
  获取 access_token
  API参考接口:
  整个代码如下:
  
                PostMethod tokenMethod = new PostMethod("https://api.weibo.com/oauth2/access_token");
tokenMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
tokenMethod.addParameter("client_secret", props.getProperty("client_SERCRET")); //appsecret
tokenMethod.addParameter("grant_type", "authorization_code");
tokenMethod.addParameter("code", code); //上一步骤拿到的code
tokenMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //回调地址
client.executeMethod(tokenMethod);
String result = tokenMethod.getResponseBodyAsString();
JSONObject jsonObject = JSON.parseObject(result);
String access_token = jsonObject.getString("access_token");//获取到的access_token
System.out.println("access_token-->" + access_token);
  获取最新微博信息列表
  API参考接口:
  代码显示如下:
  发送微博消息
  api参考:
  代码显示如下:
  
                PostMethod newMethod = new PostMethod("https://api.weibo.com/2/statuses/update.json");
newMethod.addParameter("access_token", access_token);
newMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8");//解决乱码问题,避免传输中文时微博上显示乱码
newMethod.addParameter("status", "使用java发新浪weibo test234563");
client.executeMethod(newMethod);
result = newMethod.getResponseBodyAsString();
jsonObject = JSON.parseObject(result);
System.out.println("newM->" + jsonObject);
  综上所述
  其实整个过程还是很简单的。最重要的是前两步登录和获取授​​权。这两步就完成了,后面都是json请求,然后传参数,拿到结果,再处理结果的问题。.
  值得注意的是,在获取access_token的第二步中,官方文档中写到可以通过grant_type=password获取token信息,即输入用户名和密码。但是这种方式需要特殊的申请,具体的申请步骤比较复杂,必须经过官方审核,非一般开发者也能做好。所以这里就不用这个了(当然,如果你用这个方法,可以将第一步和第二步合并成一)。 查看全部

  网站调用新浪微博内容(新浪微博的开发api,公示如下公示)
  注:本文代码无效,请勿模仿,其他方法请参考scribe方法
  最近在研究新浪微博的开发api,尝试在一些客户端应用中调用相应的api来发送新浪微博。经过一番尝试,终于成功了。几个关键点和相应的demo发布如下,供大家理解。
  在本文中,我主要演示如何通过用户名/密码连接到新浪微博,然后读取最新的微博信息,最后演示如何发送一个简单的微博,其他可以通过相应的微博api进行处理,有这里没有仔细深入。
  首先要申请开发者授权,也就是要在新浪上申请。直接通过地址:用微博登录后,创建一个应用程序即可。创建应用的目的是获取对应的app Key和app Secret。app key会用到后面的主要API中,方便新浪追踪请求的来源。具体流程请自行google。
  应用完成后,我们将开始我们的api之旅。在本文中,我们没有使用官方的java sdk,因为主要目的是一个简单的演示。如果是应用开发,还是可以下载对应的java sdk应用。查看示例以了解如何拨打电话。
  本文使用httpclient。如果使用maven,可以使用groupId作为commons-httpclient,使用artifactId作为commons-httpclient,将其导入到项目中。其次,为了方便对返回数据的分析,使用了一个JSON组件(fastjson)来解析json字符串。
  获取应用授权,即允许应用访问用户的相应信息(用户名、密码除外)
  由于新浪使用的是auth2.0,所以整个登录过程分为两部分。一部分是登录授权,它允许我们的应用访问指定用户的相应信息。这里的信息不包括用户名和密码。. 在类网页应用中,即通过弹出新浪登录框,用户输入用户名和密码,授权应用使用。新浪通过验证后,会返回到我们的应用所在的主界面。第二部分是获取对应的token,相当于用户会话,以便在后续操作中可以使用这个token进行数据访问。
  申请授权地址为:,完整代码如下:
  
PostMethod postMethod = new PostMethod("https://api.weibo.com/oauth2/authorize";);
postMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
postMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //oauth2 回调地址
postMethod.addParameter("response_type", "code");//请求code信息
postMethod.addParameter("action", "submit");//表示授权访问
postMethod.addParameter("userId", "xxxx"); //微博帐号
postMethod.addParameter("passwd", "xxxx"); //帐号密码
client.executeMethod(postMethod);
String url = postMethod.getResponseHeader("location").getValue();//取得重定向的地址信息
/** 以下为获取新浪返回的code信息 */
String params = url.substring(url.lastIndexOf("?") + 1);
Map p = parseQueryString(params);
String code = p.get("code")[0];
//取得code数据
System.out.println("code->" + code);
  获取 access_token
  API参考接口:
  整个代码如下:
  
                PostMethod tokenMethod = new PostMethod("https://api.weibo.com/oauth2/access_token";);
tokenMethod.addParameter("client_id", props.getProperty("client_ID")); //appkey
tokenMethod.addParameter("client_secret", props.getProperty("client_SERCRET")); //appsecret
tokenMethod.addParameter("grant_type", "authorization_code");
tokenMethod.addParameter("code", code); //上一步骤拿到的code
tokenMethod.addParameter("redirect_uri", props.getProperty("redirect_URI")); //回调地址
client.executeMethod(tokenMethod);
String result = tokenMethod.getResponseBodyAsString();
JSONObject jsonObject = JSON.parseObject(result);
String access_token = jsonObject.getString("access_token");//获取到的access_token
System.out.println("access_token-->" + access_token);
  获取最新微博信息列表
  API参考接口:
  代码显示如下:
  发送微博消息
  api参考:
  代码显示如下:
  
                PostMethod newMethod = new PostMethod("https://api.weibo.com/2/statuses/update.json";);
newMethod.addParameter("access_token", access_token);
newMethod.getParams().setParameter(HttpMethodParams.HTTP_CONTENT_CHARSET, "utf-8");//解决乱码问题,避免传输中文时微博上显示乱码
newMethod.addParameter("status", "使用java发新浪weibo test234563");
client.executeMethod(newMethod);
result = newMethod.getResponseBodyAsString();
jsonObject = JSON.parseObject(result);
System.out.println("newM->" + jsonObject);
  综上所述
  其实整个过程还是很简单的。最重要的是前两步登录和获取授​​权。这两步就完成了,后面都是json请求,然后传参数,拿到结果,再处理结果的问题。.
  值得注意的是,在获取access_token的第二步中,官方文档中写到可以通过grant_type=password获取token信息,即输入用户名和密码。但是这种方式需要特殊的申请,具体的申请步骤比较复杂,必须经过官方审核,非一般开发者也能做好。所以这里就不用这个了(当然,如果你用这个方法,可以将第一步和第二步合并成一)。

网站调用新浪微博内容(微博登录访问第三方网站,分享内容,同步信息教程)

网站优化优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2021-12-18 14:09 • 来自相关话题

  网站调用新浪微博内容(微博登录访问第三方网站,分享内容,同步信息教程)
  在平时的项目开发过程中,除了注册这个账号网站登录外,还可以调用第三方接口登录网站。这里我们以微博登录为例。微博登录包括身份认证、用户关系和内容传播。允许用户使用微博账号登录访问第三方网站,分享内容,同步信息。
  1、首先需要将需要授权的用户引导到以下地址:
  如果用户同意授权,页面跳转到YOUR_REGISTERED_REDIRECT_URI/?code=CODE:
  2、 接下来我们需要根据上面得到的代码兑换Access Token:
  返回值:
  JSON
  
{
"access_token": "SlAV32hkKG",
"remind_in": 3600,
"expires_in": 3600
}
  3、最后使用获取到的OAuth2.0 Access Token调用API获取用户身份,完成用户登录。
  话不多说,直接上代码:
  为方便起见,我们先将get和post封装到application下的common.php中:
  应用公用文件common.php:
  
function get( $url, $_header = NULL )
{
$curl = curl_init();
//curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, false);
if( stripos($url, 'https://') !==FALSE )
{
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
}
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
if ( $_header != NULL )
{
curl_setopt($curl, CURLOPT_HTTPHEADER, $_header);
}
$ret = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if( intval( $info["http_code"] ) == 200 )
{
return $ret;
}
return false;
}
/*
* post method
*/
function post( $url, $param )
{
$oCurl = curl_init ();
curl_setopt ( $oCurl, CURLOPT_SAFE_UPLOAD, false);
if (stripos ( $url, "https://" ) !== FALSE) {
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYHOST, false );
}

curl_setopt ( $oCurl, CURLOPT_URL, $url );
curl_setopt ( $oCurl, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $oCurl, CURLOPT_POST, true );
curl_setopt ( $oCurl, CURLOPT_POSTFIELDS, $param );
$sContent = curl_exec ( $oCurl );
$aStatus = curl_getinfo ( $oCurl );
curl_close ( $oCurl );
if (intval ( $aStatus ["http_code"] ) == 200) {
return $sContent;
} else {
return false;
}
}
  控制器处理代码 Login.php:
  
class Login extends \think\Controller
{
public function index()
{
$key = "****";
$redirect_uri = "***微博应用安全域名***/?backurl=***项目本地域名***/home/login/webLogin?";
//授权后将页面重定向到本地项目
$redirect_uri = urlencode($redirect_uri);
$wb_url = "https://api.weibo.com/oauth2/authorize?client_id={$key}&response_type=code&redirect_uri={$redirect_uri}";
$this -> assign('wb_url',$wb_url);
return view('login');
}
public function webLogin(){
$key = "*****";
//接收code值
$code = input('get.code');
//换取Access Token: post方式请求 替换参数: client_id, client_secret,redirect_uri, code
$secret = "********";
$redirect_uri = "********";
$url = "https://api.weibo.com/oauth2/a ... id%3D{$key}&client_secret={$secret}&grant_type=authorization_code&redirect_uri={$redirect_uri}&code={$code}";
$token = post($url, array());
$token = json_decode($token, true);
//获取用户信息 : get方法,替换参数: access_token, uid
$url = "https://api.weibo.com/2/users/ ... en%3D{$token['access_token']}&uid={$token['uid']}";
$info = get($url);
if($info){
echo "<p>登录成功";
}
}
}</p>
  模板代码 login.html:
  

微博登录
点击这里进行微博登录
  效果图:
  
  
  
  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持面圈教程。 查看全部

  网站调用新浪微博内容(微博登录访问第三方网站,分享内容,同步信息教程)
  在平时的项目开发过程中,除了注册这个账号网站登录外,还可以调用第三方接口登录网站。这里我们以微博登录为例。微博登录包括身份认证、用户关系和内容传播。允许用户使用微博账号登录访问第三方网站,分享内容,同步信息。
  1、首先需要将需要授权的用户引导到以下地址:
  如果用户同意授权,页面跳转到YOUR_REGISTERED_REDIRECT_URI/?code=CODE:
  2、 接下来我们需要根据上面得到的代码兑换Access Token:
  返回值:
  JSON
  
{
"access_token": "SlAV32hkKG",
"remind_in": 3600,
"expires_in": 3600
}
  3、最后使用获取到的OAuth2.0 Access Token调用API获取用户身份,完成用户登录。
  话不多说,直接上代码:
  为方便起见,我们先将get和post封装到application下的common.php中:
  应用公用文件common.php:
  
function get( $url, $_header = NULL )
{
$curl = curl_init();
//curl_setopt ( $curl, CURLOPT_SAFE_UPLOAD, false);
if( stripos($url, 'https://') !==FALSE )
{
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
}
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HEADER, 0);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
if ( $_header != NULL )
{
curl_setopt($curl, CURLOPT_HTTPHEADER, $_header);
}
$ret = curl_exec($curl);
$info = curl_getinfo($curl);
curl_close($curl);
if( intval( $info["http_code"] ) == 200 )
{
return $ret;
}
return false;
}
/*
* post method
*/
function post( $url, $param )
{
$oCurl = curl_init ();
curl_setopt ( $oCurl, CURLOPT_SAFE_UPLOAD, false);
if (stripos ( $url, "https://" ) !== FALSE) {
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYHOST, false );
}

curl_setopt ( $oCurl, CURLOPT_URL, $url );
curl_setopt ( $oCurl, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt ( $oCurl, CURLOPT_POST, true );
curl_setopt ( $oCurl, CURLOPT_POSTFIELDS, $param );
$sContent = curl_exec ( $oCurl );
$aStatus = curl_getinfo ( $oCurl );
curl_close ( $oCurl );
if (intval ( $aStatus ["http_code"] ) == 200) {
return $sContent;
} else {
return false;
}
}
  控制器处理代码 Login.php:
  
class Login extends \think\Controller
{
public function index()
{
$key = "****";
$redirect_uri = "***微博应用安全域名***/?backurl=***项目本地域名***/home/login/webLogin?";
//授权后将页面重定向到本地项目
$redirect_uri = urlencode($redirect_uri);
$wb_url = "https://api.weibo.com/oauth2/authorize?client_id={$key}&response_type=code&redirect_uri={$redirect_uri}";
$this -> assign('wb_url',$wb_url);
return view('login');
}
public function webLogin(){
$key = "*****";
//接收code值
$code = input('get.code');
//换取Access Token: post方式请求 替换参数: client_id, client_secret,redirect_uri, code
$secret = "********";
$redirect_uri = "********";
$url = "https://api.weibo.com/oauth2/a ... id%3D{$key}&client_secret={$secret}&grant_type=authorization_code&redirect_uri={$redirect_uri}&code={$code}";
$token = post($url, array());
$token = json_decode($token, true);
//获取用户信息 : get方法,替换参数: access_token, uid
$url = "https://api.weibo.com/2/users/ ... en%3D{$token['access_token']}&uid={$token['uid']}";
$info = get($url);
if($info){
echo "<p>登录成功";
}
}
}</p>
  模板代码 login.html:
  

微博登录
点击这里进行微博登录
  效果图:
  
  
  
  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持面圈教程。

网站调用新浪微博内容( 7.发布失败提示20017内容重复出现提示未登录 )

网站优化优采云 发表了文章 • 0 个评论 • 54 次浏览 • 2021-12-17 09:04 • 来自相关话题

  网站调用新浪微博内容(
7.发布失败提示20017内容重复出现提示未登录
)
  一、微博发布失败及报错汇总
  1.发布失败,草稿箱提示(-105)
  出现这种情况是因为您在一段时间内频繁发布微博。我们建议您稍后再试。
  2.释放失败提示C-1001
  出现这种情况是因为您的网络环境不正常。建议您先清除微博缓存,更换网络环境,尝试卸载重装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  3.发帖失败提示“对不起,内容收录违反相关法律法规或《微博社区公约》”的信息
  出现这种情况是因为您要发布的内容收录违反相关法律法规或《微博社区公约》的信息。建议您修改一下内容,再次尝试发布。
  4.发帖失败提示20021
  出现这种情况是因为根据相关法律法规不能发布该内容。建议您再次尝试编辑和发布微博。
  5.发帖失败提示3021002未登录
  在这种情况下,建议您先卸载并重新安装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  6. 发布失败提示C-1001、3021001、3021004、3021006等
  如果您的微博收录图片,建议您调整发布图片的大小、像素和格式(大小和像素尽量小,格式最好为jpg)。如果调整后发布失败或者微博没有图片,您可以点击微博发布失败反馈。
  7.发帖失败提示20017重复内容
  出现此提示是因为您在短时间内发布或转发了相同或相似的内容。建议你修改一下副本,过一会再试
  8.发布文章失败提示110082
  出现这种情况是因为发布的微博内容中含有系统识别的受保护词汇,无法发布。建议您调整一下内容再尝试发布
  二、为什么不能编辑我的微博
  以下情况不能编辑微博:
  1、原创 微博已投放广告,此微博博主无法编辑;
  2、原创微博被转发,被转发的博主投放广告,导致原创微博无法编辑;
  3、 微博被别人“帮上头条”。该微博博主无法编辑。
  如果您的微博不存在上述情况,则可能是微博状态异常所致。您可以点击反馈。反馈时,您需要按要求提供相关信息,以便工作人员快速处理您的问题。
  三、如何取消自动续费
  1、 取消支付宝激活方式:取消支付宝免密码支付
  2、如何取消微信支付:点击这里
  3、如何通过Apple Pay取消:点击这里
  4、如何通过短信取消月供:点击这里
  四、为什么进群会提示“此人有广告风险,请仔细查看”?
  当会员申请加入粉丝群/聊天群时,系统会判断其身份。如果判断为经常发布垃圾广告的微博用户,会提示群主或管理员仔细查看群管理页面。
  
  五、个人域名相关问题
  1.个性化域名可以使用符号吗?
  个性化域名支持英文或英文+数字格式,暂不支持其他字符。长度:4-20个字符
  2.个性化域名设置后可以修改或注销吗?
  个性化域名一旦设置,将无法修改或取消,请谨慎选择。
  六、 如何复制网页版的微博链接?
  ① 点击微博发布时间进入微博网页;
  
  ②网页地址栏中的链接为微博链接,选中后右键复制。
   查看全部

  网站调用新浪微博内容(
7.发布失败提示20017内容重复出现提示未登录
)
  一、微博发布失败及报错汇总
  1.发布失败,草稿箱提示(-105)
  出现这种情况是因为您在一段时间内频繁发布微博。我们建议您稍后再试。
  2.释放失败提示C-1001
  出现这种情况是因为您的网络环境不正常。建议您先清除微博缓存,更换网络环境,尝试卸载重装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  3.发帖失败提示“对不起,内容收录违反相关法律法规或《微博社区公约》”的信息
  出现这种情况是因为您要发布的内容收录违反相关法律法规或《微博社区公约》的信息。建议您修改一下内容,再次尝试发布。
  4.发帖失败提示20021
  出现这种情况是因为根据相关法律法规不能发布该内容。建议您再次尝试编辑和发布微博。
  5.发帖失败提示3021002未登录
  在这种情况下,建议您先卸载并重新安装微博客户端。如果操作无效,您可以点击微博发布失败进行反馈。
  6. 发布失败提示C-1001、3021001、3021004、3021006等
  如果您的微博收录图片,建议您调整发布图片的大小、像素和格式(大小和像素尽量小,格式最好为jpg)。如果调整后发布失败或者微博没有图片,您可以点击微博发布失败反馈。
  7.发帖失败提示20017重复内容
  出现此提示是因为您在短时间内发布或转发了相同或相似的内容。建议你修改一下副本,过一会再试
  8.发布文章失败提示110082
  出现这种情况是因为发布的微博内容中含有系统识别的受保护词汇,无法发布。建议您调整一下内容再尝试发布
  二、为什么不能编辑我的微博
  以下情况不能编辑微博:
  1、原创 微博已投放广告,此微博博主无法编辑;
  2、原创微博被转发,被转发的博主投放广告,导致原创微博无法编辑;
  3、 微博被别人“帮上头条”。该微博博主无法编辑。
  如果您的微博不存在上述情况,则可能是微博状态异常所致。您可以点击反馈。反馈时,您需要按要求提供相关信息,以便工作人员快速处理您的问题。
  三、如何取消自动续费
  1、 取消支付宝激活方式:取消支付宝免密码支付
  2、如何取消微信支付:点击这里
  3、如何通过Apple Pay取消:点击这里
  4、如何通过短信取消月供:点击这里
  四、为什么进群会提示“此人有广告风险,请仔细查看”?
  当会员申请加入粉丝群/聊天群时,系统会判断其身份。如果判断为经常发布垃圾广告的微博用户,会提示群主或管理员仔细查看群管理页面。
  
  五、个人域名相关问题
  1.个性化域名可以使用符号吗?
  个性化域名支持英文或英文+数字格式,暂不支持其他字符。长度:4-20个字符
  2.个性化域名设置后可以修改或注销吗?
  个性化域名一旦设置,将无法修改或取消,请谨慎选择。
  六、 如何复制网页版的微博链接?
  ① 点击微博发布时间进入微博网页;
  
  ②网页地址栏中的链接为微博链接,选中后右键复制。
  

网站调用新浪微博内容(id拼接成URL,访问用户微博列表了,怎么办?)

网站优化优采云 发表了文章 • 0 个评论 • 37 次浏览 • 2021-12-16 22:12 • 来自相关话题

  网站调用新浪微博内容(id拼接成URL,访问用户微博列表了,怎么办?)
  由于新浪微博对开发者的严格限制,该界面一直无法获取指定用户的微博列表。无奈之下,写了一天爬虫工具,绕过API限制(无高级接口权限),终于拿到了用户的微博列表,分享过程:
  第一步是模拟登录。新浪的登录比较严格。一次登录需要来自服务器的三个请求(可以用谷歌浏览器网络监控工具查看),并且用户名和密码的加密方式一直在变化,导致很多网络爬虫经常失败。. 我采取的方法是绕过模拟登录,直接在RequestHeaders中添加cookies。我如何获得饼干?只要正常登录,使用监控工具,找到一个界面,如下图,将cookie内容复制到RequestHeaders(请求的每一步都需要添加一个cookie,这是你是否登录的证明)
  
  用户cookie
  第二步调用新浪界面获取用户id,如2264520883
  第三步,将获取到的id拼接成URL访问用户主页,抓取主页内容,截取用户微博主页page_id,如下图
  
  page_id
  第四步,将获取到的page_id拼接成微博首页URL(page_id=prefix user id),#feedtop,抓取网页内容,提取需要的元素。您只需要为每个分页更改 page 参数的值。
  问题是,使用上述方法获取的微博数量仅占总数的1/3。为什么?第一个分页id从1开始,但是第二个分页id从46开始,这是因为微博加载中有两个ajax异步加载,异步加载的内容没有显示在网页上,也就是一共每页有 45 个数据,其中 30 个没有显示,我该怎么办?
  第五步,通过网络监控工具,可以发现微博在异步加载时调用了如下接口
  
  微博界面
  有几个参数需要注意。domain是page_id的前缀,pre_page和page是当前页码,max_id是上一页最小的微博id,end_id是上一页最大的微博id(仔细看结论),count是微博的数量per pagination(固定为15),id为page_id,script_uri也收录page_id,拼接时需要注意,from=page_id前缀,最后一个参数__rnd要靠常识来猜测,是当前时间戳(代码写的太多,对数据太敏感)。
  知道这些参数后,就可以开始爬取了。请注意,页面中有两个异步加载。经测试,已成功获取所有微博数据。
  最后,给自己一个赞。辛苦一天也不容易。同时,非常感谢Chrome浏览器。你的网络监控太棒了! 查看全部

  网站调用新浪微博内容(id拼接成URL,访问用户微博列表了,怎么办?)
  由于新浪微博对开发者的严格限制,该界面一直无法获取指定用户的微博列表。无奈之下,写了一天爬虫工具,绕过API限制(无高级接口权限),终于拿到了用户的微博列表,分享过程:
  第一步是模拟登录。新浪的登录比较严格。一次登录需要来自服务器的三个请求(可以用谷歌浏览器网络监控工具查看),并且用户名和密码的加密方式一直在变化,导致很多网络爬虫经常失败。. 我采取的方法是绕过模拟登录,直接在RequestHeaders中添加cookies。我如何获得饼干?只要正常登录,使用监控工具,找到一个界面,如下图,将cookie内容复制到RequestHeaders(请求的每一步都需要添加一个cookie,这是你是否登录的证明)
  
  用户cookie
  第二步调用新浪界面获取用户id,如2264520883
  第三步,将获取到的id拼接成URL访问用户主页,抓取主页内容,截取用户微博主页page_id,如下图
  
  page_id
  第四步,将获取到的page_id拼接成微博首页URL(page_id=prefix user id),#feedtop,抓取网页内容,提取需要的元素。您只需要为每个分页更改 page 参数的值。
  问题是,使用上述方法获取的微博数量仅占总数的1/3。为什么?第一个分页id从1开始,但是第二个分页id从46开始,这是因为微博加载中有两个ajax异步加载,异步加载的内容没有显示在网页上,也就是一共每页有 45 个数据,其中 30 个没有显示,我该怎么办?
  第五步,通过网络监控工具,可以发现微博在异步加载时调用了如下接口
  
  微博界面
  有几个参数需要注意。domain是page_id的前缀,pre_page和page是当前页码,max_id是上一页最小的微博id,end_id是上一页最大的微博id(仔细看结论),count是微博的数量per pagination(固定为15),id为page_id,script_uri也收录page_id,拼接时需要注意,from=page_id前缀,最后一个参数__rnd要靠常识来猜测,是当前时间戳(代码写的太多,对数据太敏感)。
  知道这些参数后,就可以开始爬取了。请注意,页面中有两个异步加载。经测试,已成功获取所有微博数据。
  最后,给自己一个赞。辛苦一天也不容易。同时,非常感谢Chrome浏览器。你的网络监控太棒了!

网站调用新浪微博内容(新版新浪微博模拟登陆请看:本文后面的解决动态加载的程序)

网站优化优采云 发表了文章 • 0 个评论 • 46 次浏览 • 2021-12-16 22:11 • 来自相关话题

  网站调用新浪微博内容(新版新浪微博模拟登陆请看:本文后面的解决动态加载的程序)
  新版新浪微博模拟登录请看:
  本文后面解决动态加载的程序还是有效的
  再次编辑,出了点问题
  第一个模块是模拟登录新浪微博,创建一个weiboLogin.py文件,输入如下代码:
  #! /usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import urllib
import urllib2
import cookielib
import base64
import re
import json
import hashlib
class weiboLogin:
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
postdata = {
&#39;entry&#39;: &#39;weibo&#39;,
&#39;gateway&#39;: &#39;1&#39;,
&#39;from&#39;: &#39;&#39;,
&#39;savestate&#39;: &#39;7&#39;,
&#39;userticket&#39;: &#39;1&#39;,
&#39;ssosimplelogin&#39;: &#39;1&#39;,
&#39;vsnf&#39;: &#39;1&#39;,
&#39;vsnval&#39;: &#39;&#39;,
&#39;su&#39;: &#39;&#39;,
&#39;service&#39;: &#39;miniblog&#39;,
&#39;servertime&#39;: &#39;&#39;,
&#39;nonce&#39;: &#39;&#39;,
&#39;pwencode&#39;: &#39;wsse&#39;,
&#39;sp&#39;: &#39;&#39;,
&#39;encoding&#39;: &#39;UTF-8&#39;,
&#39;url&#39;: &#39;http://weibo.com/ajaxlogin.php ... 39%3B,
&#39;returntype&#39;: &#39;META&#39;
}
def get_servertime(self):
url = &#39;http://login.sina.com.cn/sso/p ... in.js(v1.3.18)&_=1329806375939&#39;
data = urllib2.urlopen(url).read()
p = re.compile(&#39;\((.*)\)&#39;)
try:
json_data = p.search(data).group(1)
data = json.loads(json_data)
servertime = str(data[&#39;servertime&#39;])
nonce = data[&#39;nonce&#39;]
return servertime, nonce
except:
print &#39;Get severtime error!&#39;
return None
def get_pwd(self, pwd, servertime, nonce):
pwd1 = hashlib.sha1(pwd).hexdigest()
pwd2 = hashlib.sha1(pwd1).hexdigest()
pwd3_ = pwd2 + servertime + nonce
pwd3 = hashlib.sha1(pwd3_).hexdigest()
return pwd3
def get_user(self, username):
username_ = urllib.quote(username)
username = base64.encodestring(username_)[:-1]
return username
def login(self,username,pwd):
url = &#39;http://login.sina.com.cn/sso/l ... in.js(v1.3.18)&#39;
try:
servertime, nonce = self.get_servertime()
except:
print &#39;get servertime error!&#39;
return
weiboLogin.postdata[&#39;servertime&#39;] = servertime
weiboLogin.postdata[&#39;nonce&#39;] = nonce
weiboLogin.postdata[&#39;su&#39;] = self.get_user(username)
weiboLogin.postdata[&#39;sp&#39;] = self.get_pwd(pwd, servertime, nonce)
weiboLogin.postdata = urllib.urlencode(weiboLogin.postdata)
headers = {&#39;User-Agent&#39;:&#39;Mozilla/5.0 (X11; Linux i686; rv:8.0) Gecko/20100101 Firefox/8.0 Chrome/20.0.1132.57 Safari/536.11&#39;}
req = urllib2.Request(
url = url,
data = weiboLogin.postdata,
headers = headers
)
result = urllib2.urlopen(req)
text = result.read()
p = re.compile(&#39;location\.replace\(\&#39;(.*?)\&#39;\)&#39;)
try:
login_url = p.search(text).group(1)
urllib2.urlopen(login_url)
print "Login success!"
except:
print &#39;Login error!&#39;
  然后创建 main.py 文件并输入以下代码:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
  注意:如果登录失败,可能是您的账号登录时需要输入验证码!您可以在网页上登录您的帐户并尝试。您可以在账户设置中设置某些区域不输入验证码。
  参考:
  接下来考虑爬取微博内容的实现。
  这时,我遇到了困难。当我抓取指定网址的微博时,最初只显示了15条。后者是延迟显示(在ajax中称为延迟加载?)。也就是说,当滚动条第一次拖到底部时,会显示第二部分,然后再拖到底部,会显示第三部分。此时,一个页面的微博就完成了。因此,要获取一个微博页面的所有微博,需要访问该页面3次。创建getWeiboPage.py文件,对应代码如下:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import urllib
import urllib2
import sys
import time
reload(sys)
sys.setdefaultencoding(&#39;utf-8&#39;)
class getWeiboPage:
body = {
&#39;__rnd&#39;:&#39;&#39;,
&#39;_k&#39;:&#39;&#39;,
&#39;_t&#39;:&#39;0&#39;,
&#39;count&#39;:&#39;50&#39;,
&#39;end_id&#39;:&#39;&#39;,
&#39;max_id&#39;:&#39;&#39;,
&#39;page&#39;:1,
&#39;pagebar&#39;:&#39;&#39;,
&#39;pre_page&#39;:&#39;0&#39;,
&#39;uid&#39;:&#39;&#39;
}
uid_list = []
charset = &#39;utf8&#39;
def get_msg(self,uid):
getWeiboPage.body[&#39;uid&#39;] = uid
url = self.get_url(uid)
self.get_firstpage(url)
self.get_secondpage(url)
self.get_thirdpage(url)
def get_firstpage(self,url):
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]-1
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text1&#39;,text)
self.writefile(&#39;./output/result1&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))

def get_secondpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
# getWeiboPage.body[&#39;end_id&#39;] = &#39;3490160379905732&#39;
# getWeiboPage.body[&#39;max_id&#39;] = &#39;3487344294660278&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;0&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text2&#39;,text)
self.writefile(&#39;./output/result2&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_thirdpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;1&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text3&#39;,text)
self.writefile(&#39;./output/result3&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_url(self,uid):
url = &#39;http://weibo.com/&#39; + uid + &#39;?from=otherprofile&wvr=3.6&loc=tagweibo&#39;
return url
def get_uid(self,filename):
fread = file(filename)
for line in fread:
getWeiboPage.uid_list.append(line)
print line
time.sleep(1)
def writefile(self,filename,content):
fw = file(filename,&#39;w&#39;)
fw.write(content)
fw.close()
  在刚才的main.py中添加相应的内容,完整内容为:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import getWeiboMsg
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
WBmsg = getWeiboMsg.getWeiboMsg()
url = &#39;http://weibo.com/1624087025%3F ... 39%3B
WBmsg.get_firstpage(url)
WBmsg.get_secondpage(url)
WBmsg.get_thirdpage(url)
  参考:
  执行python main.py,应该可以运行了,结果保存在./output/文件夹中,这个文件夹是提前创建的。
  昨天我们整整过了一个下午,还有很多事情没有做。欢迎留言。 查看全部

  网站调用新浪微博内容(新版新浪微博模拟登陆请看:本文后面的解决动态加载的程序)
  新版新浪微博模拟登录请看:
  本文后面解决动态加载的程序还是有效的
  再次编辑,出了点问题
  第一个模块是模拟登录新浪微博,创建一个weiboLogin.py文件,输入如下代码:
  #! /usr/bin/env python
# -*- coding: utf-8 -*-
import sys
import urllib
import urllib2
import cookielib
import base64
import re
import json
import hashlib
class weiboLogin:
cj = cookielib.LWPCookieJar()
cookie_support = urllib2.HTTPCookieProcessor(cj)
opener = urllib2.build_opener(cookie_support, urllib2.HTTPHandler)
urllib2.install_opener(opener)
postdata = {
&#39;entry&#39;: &#39;weibo&#39;,
&#39;gateway&#39;: &#39;1&#39;,
&#39;from&#39;: &#39;&#39;,
&#39;savestate&#39;: &#39;7&#39;,
&#39;userticket&#39;: &#39;1&#39;,
&#39;ssosimplelogin&#39;: &#39;1&#39;,
&#39;vsnf&#39;: &#39;1&#39;,
&#39;vsnval&#39;: &#39;&#39;,
&#39;su&#39;: &#39;&#39;,
&#39;service&#39;: &#39;miniblog&#39;,
&#39;servertime&#39;: &#39;&#39;,
&#39;nonce&#39;: &#39;&#39;,
&#39;pwencode&#39;: &#39;wsse&#39;,
&#39;sp&#39;: &#39;&#39;,
&#39;encoding&#39;: &#39;UTF-8&#39;,
&#39;url&#39;: &#39;http://weibo.com/ajaxlogin.php ... 39%3B,
&#39;returntype&#39;: &#39;META&#39;
}
def get_servertime(self):
url = &#39;http://login.sina.com.cn/sso/p ... in.js(v1.3.18)&_=1329806375939&#39;
data = urllib2.urlopen(url).read()
p = re.compile(&#39;\((.*)\)&#39;)
try:
json_data = p.search(data).group(1)
data = json.loads(json_data)
servertime = str(data[&#39;servertime&#39;])
nonce = data[&#39;nonce&#39;]
return servertime, nonce
except:
print &#39;Get severtime error!&#39;
return None
def get_pwd(self, pwd, servertime, nonce):
pwd1 = hashlib.sha1(pwd).hexdigest()
pwd2 = hashlib.sha1(pwd1).hexdigest()
pwd3_ = pwd2 + servertime + nonce
pwd3 = hashlib.sha1(pwd3_).hexdigest()
return pwd3
def get_user(self, username):
username_ = urllib.quote(username)
username = base64.encodestring(username_)[:-1]
return username
def login(self,username,pwd):
url = &#39;http://login.sina.com.cn/sso/l ... in.js(v1.3.18)&#39;
try:
servertime, nonce = self.get_servertime()
except:
print &#39;get servertime error!&#39;
return
weiboLogin.postdata[&#39;servertime&#39;] = servertime
weiboLogin.postdata[&#39;nonce&#39;] = nonce
weiboLogin.postdata[&#39;su&#39;] = self.get_user(username)
weiboLogin.postdata[&#39;sp&#39;] = self.get_pwd(pwd, servertime, nonce)
weiboLogin.postdata = urllib.urlencode(weiboLogin.postdata)
headers = {&#39;User-Agent&#39;:&#39;Mozilla/5.0 (X11; Linux i686; rv:8.0) Gecko/20100101 Firefox/8.0 Chrome/20.0.1132.57 Safari/536.11&#39;}
req = urllib2.Request(
url = url,
data = weiboLogin.postdata,
headers = headers
)
result = urllib2.urlopen(req)
text = result.read()
p = re.compile(&#39;location\.replace\(\&#39;(.*?)\&#39;\)&#39;)
try:
login_url = p.search(text).group(1)
urllib2.urlopen(login_url)
print "Login success!"
except:
print &#39;Login error!&#39;
  然后创建 main.py 文件并输入以下代码:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
  注意:如果登录失败,可能是您的账号登录时需要输入验证码!您可以在网页上登录您的帐户并尝试。您可以在账户设置中设置某些区域不输入验证码。
  参考:
  接下来考虑爬取微博内容的实现。
  这时,我遇到了困难。当我抓取指定网址的微博时,最初只显示了15条。后者是延迟显示(在ajax中称为延迟加载?)。也就是说,当滚动条第一次拖到底部时,会显示第二部分,然后再拖到底部,会显示第三部分。此时,一个页面的微博就完成了。因此,要获取一个微博页面的所有微博,需要访问该页面3次。创建getWeiboPage.py文件,对应代码如下:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import urllib
import urllib2
import sys
import time
reload(sys)
sys.setdefaultencoding(&#39;utf-8&#39;)
class getWeiboPage:
body = {
&#39;__rnd&#39;:&#39;&#39;,
&#39;_k&#39;:&#39;&#39;,
&#39;_t&#39;:&#39;0&#39;,
&#39;count&#39;:&#39;50&#39;,
&#39;end_id&#39;:&#39;&#39;,
&#39;max_id&#39;:&#39;&#39;,
&#39;page&#39;:1,
&#39;pagebar&#39;:&#39;&#39;,
&#39;pre_page&#39;:&#39;0&#39;,
&#39;uid&#39;:&#39;&#39;
}
uid_list = []
charset = &#39;utf8&#39;
def get_msg(self,uid):
getWeiboPage.body[&#39;uid&#39;] = uid
url = self.get_url(uid)
self.get_firstpage(url)
self.get_secondpage(url)
self.get_thirdpage(url)
def get_firstpage(self,url):
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]-1
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text1&#39;,text)
self.writefile(&#39;./output/result1&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))

def get_secondpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
# getWeiboPage.body[&#39;end_id&#39;] = &#39;3490160379905732&#39;
# getWeiboPage.body[&#39;max_id&#39;] = &#39;3487344294660278&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;0&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text2&#39;,text)
self.writefile(&#39;./output/result2&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_thirdpage(self,url):
getWeiboPage.body[&#39;count&#39;] = &#39;15&#39;
getWeiboPage.body[&#39;pagebar&#39;] = &#39;1&#39;
getWeiboPage.body[&#39;pre_page&#39;] = getWeiboPage.body[&#39;page&#39;]
url = url +urllib.urlencode(getWeiboPage.body)
req = urllib2.Request(url)
result = urllib2.urlopen(req)
text = result.read()
self.writefile(&#39;./output/text3&#39;,text)
self.writefile(&#39;./output/result3&#39;,eval("u&#39;&#39;&#39;"+text+"&#39;&#39;&#39;"))
def get_url(self,uid):
url = &#39;http://weibo.com/&#39; + uid + &#39;?from=otherprofile&wvr=3.6&loc=tagweibo&#39;
return url
def get_uid(self,filename):
fread = file(filename)
for line in fread:
getWeiboPage.uid_list.append(line)
print line
time.sleep(1)
def writefile(self,filename,content):
fw = file(filename,&#39;w&#39;)
fw.write(content)
fw.close()
  在刚才的main.py中添加相应的内容,完整内容为:
  #!/usr/bin/env python
# -*- coding: utf-8 -*-
import weiboLogin
import getWeiboMsg
import urllib
import urllib2
username = &#39;你的微博用户名&#39;
pwd = &#39;你的微博密码&#39;
WBLogin = weiboLogin.weiboLogin()
WBLogin.login(username, pwd)
WBmsg = getWeiboMsg.getWeiboMsg()
url = &#39;http://weibo.com/1624087025%3F ... 39%3B
WBmsg.get_firstpage(url)
WBmsg.get_secondpage(url)
WBmsg.get_thirdpage(url)
  参考:
  执行python main.py,应该可以运行了,结果保存在./output/文件夹中,这个文件夹是提前创建的。
  昨天我们整整过了一个下午,还有很多事情没有做。欢迎留言。

网站调用新浪微博内容(12-第三方登录开发模式(图)登录、第三方)

网站优化优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2021-12-16 15:30 • 来自相关话题

  网站调用新浪微博内容(12-第三方登录开发模式(图)登录、第三方)
  12-第三方登录
  一、第三方登录1.1、第三方登录开发模式 先注册一个第三方登录开发平台如微博开放平台1.2、oauth 2.@ &gt;0Get access_tokenapps/utils/weibo_longin.pydefget_auth_url():#获取代码参数weibo_auth_url='#x27;redi
  .NET实现微博粉丝服务平台接口
  它是每个应用程序中唯一的OpenID,在微博中,它是用户的uid。对于文本消息,requestMessage中有一个Content属性来获取用户发送的文本内容,根据用户发送的内容不同返回不同的结果;对于事件消息,有一个 Event 属性来获取事件类型;对于菜单点击事件和链接消息,有EventKey属性可以分别指示菜单事件的名称和点击菜单后跳转到的URL地址,特别是点击事件,可以根据不同的EventKeys返回。
  【上班钓鱼】聊天机器人定时发微博热搜
  微博最新资讯2、bs4包分析最新数据网页3、过滤当前微博推广热搜4、构建合适的企业微信机器人降价数据企业微信机器人1、@ &gt;根据企业微信机器人接口CI定时触发实现请求方法1、使用编码提供的免费ci构建并执行python脚本2、设置构建作业的定时任务实现python实现的脚本数据分析组装基础微博首页地址"
  微博版本控制真的有问题
  微博的版本控制确实有问题。一时兴起,想取消一些第三方网站或者微博登录绑定的应用的授权,可是根本找不到北!无论是新的还是原创的界面。感觉就像是在 N 年前的“帐户设置”中,但现在不是。搜了一堆问答,官方客服,@微博客服机器人也是N年前的老答案。在账户设置、管理中心等,根本没有“我的应用”或“我的工具”。有一个“开放平台”,其中“我的应用程序”和解除绑定不是一回事。折腾了半天,在多个答案中找到了解决方法
  SpringBoot+Vue 实现第三方QQ登录(二)
  nbsp;OpenAPI调用说明_OAuth2.@>0 这一步的作用:获取AccessToken和OpenID后,可以通过调用OpenAPI获取或修改用户的个人信息。这一步在整个过程中的位置: 5.1 前提条件1. appid已经激活使用OpenAPI。从API列表中的接口列表可以看出,有些接口是完全开放的,有些接口需要提前提交才能获得访问权限。2.@> 被访问的资源被授权给用户访问。网站致电
  前端攻击(XSS 和 CSRF)
  1.CSRF(Cross-siterequestforgery)的基本概念、缩写和全称:跨站请求伪造用户是网站A的注册用户,登录后,网站A就会交给用户 从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要条件:1.login trust 网站A,并在本地生成一个cookie。(如果用户没有登录网站A,那么网站B在诱导时请求网站A的api接口时会提示你登录。)2.@>当没有退出 A
  JWT 认证设置一些类型的令牌(验证协议)
  ------什么样的token可以算是bearertoken?过去,当一个用户被认证时,一般是: -&gt; 用户向服务器发送验证信息(用户名、密码)。-&gt; 如果认证成功,服务器会返回一个sessionid给用户,服务器会保存这个session_id对应的信息,写入到用户的Cookie中。-&gt; 前端每次发送请求后,都会通过Cookie将session_id发回服务器,服务器会收到session_
  微信不再提供打开应用的小程序?借助H5,你必须知道引流App流量的方法!
  &gt; 用于将微博内容以小程序形式分享给微信好友的应用。打开微博小程序页面,点击【打开应用】按钮,选择调出微博App指定页面,引导App通过小程序流程:现在:App-&gt;H5-&gt;App和App-&gt; H5-&gt;小程序 由于新政策,小程序不能再唤起应用程序,所以微博改变了策略,从在微信上分享微博内容给朋友。变成了H5页面的形式。打开H5页面,可以看到底部有两个明显的
  软件工程大学项目分工
  个人博客系统任务分工:郑负责文档撰写(包括开发文档、需求文档、用户使用文档)和PPT答辩。技术方面需要实现个人博客的登录功能。Minghe Li 负责后端代码开发、测试和前端集成。主要实现个人微博博客管理、分类管理、标签管理三大模块。博客管理模块包括:发布博客、修改博客、删除博客、查询博客分类管理模块包括:新建分类、修改分类、删除分类、查询分类标签管理模块添加新标签、修改标签、删除标签绘制、处理前端代码开发
  什么是 API 和 SDK?有什么不同?如何测试SDK?
  pi的过程就是用钥匙开门的过程。SDK 将这些钥匙串放在一起,并将 api 集成在一起。使用 SDK,您可以在家中畅行无阻。想要拿到房间里的资源,用手拿着钥匙开门进去拿。两者的区别:API是一个明确的功能,其作用已经明确(例如加法)。SDK就像是很多方法的集合,是一个工具。比如要加法调用电脑SDK的加法API实现,要减法调用减法。 查看全部

  网站调用新浪微博内容(12-第三方登录开发模式(图)登录、第三方)
  12-第三方登录
  一、第三方登录1.1、第三方登录开发模式 先注册一个第三方登录开发平台如微博开放平台1.2、oauth 2.@ &gt;0Get access_tokenapps/utils/weibo_longin.pydefget_auth_url():#获取代码参数weibo_auth_url='#x27;redi
  .NET实现微博粉丝服务平台接口
  它是每个应用程序中唯一的OpenID,在微博中,它是用户的uid。对于文本消息,requestMessage中有一个Content属性来获取用户发送的文本内容,根据用户发送的内容不同返回不同的结果;对于事件消息,有一个 Event 属性来获取事件类型;对于菜单点击事件和链接消息,有EventKey属性可以分别指示菜单事件的名称和点击菜单后跳转到的URL地址,特别是点击事件,可以根据不同的EventKeys返回。
  【上班钓鱼】聊天机器人定时发微博热搜
  微博最新资讯2、bs4包分析最新数据网页3、过滤当前微博推广热搜4、构建合适的企业微信机器人降价数据企业微信机器人1、@ &gt;根据企业微信机器人接口CI定时触发实现请求方法1、使用编码提供的免费ci构建并执行python脚本2、设置构建作业的定时任务实现python实现的脚本数据分析组装基础微博首页地址"
  微博版本控制真的有问题
  微博的版本控制确实有问题。一时兴起,想取消一些第三方网站或者微博登录绑定的应用的授权,可是根本找不到北!无论是新的还是原创的界面。感觉就像是在 N 年前的“帐户设置”中,但现在不是。搜了一堆问答,官方客服,@微博客服机器人也是N年前的老答案。在账户设置、管理中心等,根本没有“我的应用”或“我的工具”。有一个“开放平台”,其中“我的应用程序”和解除绑定不是一回事。折腾了半天,在多个答案中找到了解决方法
  SpringBoot+Vue 实现第三方QQ登录(二)
  nbsp;OpenAPI调用说明_OAuth2.@>0 这一步的作用:获取AccessToken和OpenID后,可以通过调用OpenAPI获取或修改用户的个人信息。这一步在整个过程中的位置: 5.1 前提条件1. appid已经激活使用OpenAPI。从API列表中的接口列表可以看出,有些接口是完全开放的,有些接口需要提前提交才能获得访问权限。2.@> 被访问的资源被授权给用户访问。网站致电
  前端攻击(XSS 和 CSRF)
  1.CSRF(Cross-siterequestforgery)的基本概念、缩写和全称:跨站请求伪造用户是网站A的注册用户,登录后,网站A就会交给用户 从上图可以看出,要完成一次CSRF攻击,受害者必须满足两个必要条件:1.login trust 网站A,并在本地生成一个cookie。(如果用户没有登录网站A,那么网站B在诱导时请求网站A的api接口时会提示你登录。)2.@>当没有退出 A
  JWT 认证设置一些类型的令牌(验证协议)
  ------什么样的token可以算是bearertoken?过去,当一个用户被认证时,一般是: -&gt; 用户向服务器发送验证信息(用户名、密码)。-&gt; 如果认证成功,服务器会返回一个sessionid给用户,服务器会保存这个session_id对应的信息,写入到用户的Cookie中。-&gt; 前端每次发送请求后,都会通过Cookie将session_id发回服务器,服务器会收到session_
  微信不再提供打开应用的小程序?借助H5,你必须知道引流App流量的方法!
  &gt; 用于将微博内容以小程序形式分享给微信好友的应用。打开微博小程序页面,点击【打开应用】按钮,选择调出微博App指定页面,引导App通过小程序流程:现在:App-&gt;H5-&gt;App和App-&gt; H5-&gt;小程序 由于新政策,小程序不能再唤起应用程序,所以微博改变了策略,从在微信上分享微博内容给朋友。变成了H5页面的形式。打开H5页面,可以看到底部有两个明显的
  软件工程大学项目分工
  个人博客系统任务分工:郑负责文档撰写(包括开发文档、需求文档、用户使用文档)和PPT答辩。技术方面需要实现个人博客的登录功能。Minghe Li 负责后端代码开发、测试和前端集成。主要实现个人微博博客管理、分类管理、标签管理三大模块。博客管理模块包括:发布博客、修改博客、删除博客、查询博客分类管理模块包括:新建分类、修改分类、删除分类、查询分类标签管理模块添加新标签、修改标签、删除标签绘制、处理前端代码开发
  什么是 API 和 SDK?有什么不同?如何测试SDK?
  pi的过程就是用钥匙开门的过程。SDK 将这些钥匙串放在一起,并将 api 集成在一起。使用 SDK,您可以在家中畅行无阻。想要拿到房间里的资源,用手拿着钥匙开门进去拿。两者的区别:API是一个明确的功能,其作用已经明确(例如加法)。SDK就像是很多方法的集合,是一个工具。比如要加法调用电脑SDK的加法API实现,要减法调用减法。

网站调用新浪微博内容(的问题是解决图片覆盖到文字之上,文字如何可以点击或选中)

网站优化优采云 发表了文章 • 0 个评论 • 39 次浏览 • 2021-12-16 06:16 • 来自相关话题

  网站调用新浪微博内容(的问题是解决图片覆盖到文字之上,文字如何可以点击或选中)
  新浪微博还没有登录。新浪微博首页有一个“大家都在说话”模块,动态滚动最新的微博帖子。
  需求方面,该功能需要实时调用最新的微博数据。仅就前端开发而言,其需求可以拆分如下:
  1 内容继续滚动;
  2 新微博先下推下一条微博,再淡入;
  3 鼠标经过内容时暂停滚动;
  4 容器底部的渐变在背景色下消失。
  以上4个需求中,需求1-3是通过js技术实现的,需求4是通过css技术实现的。下面我们一一说下要求。
  需求一和需求二:内容连续滚动的需求有点类似于上一篇文章《小模块:公告滚动与暂停》介绍的功能。在那篇文章中,这个函数使用了CSS Position定位来控制整个ul列表的移动动画。结合需求2,我们可以写的更简单一些,让最后一个li元素有规律地插入第一个li元素的上方,然后使用animate方法改变li的高度和透明度。setTimeout 方法仍然用于无暂停滚动。在没有新数据加载的情况下,实现有限内容循环滚动。
  需求3:当鼠标经过并暂停时,可以在鼠标悬停时将属性的值添加到元素中。这里使用name属性来判断这个值是否存在,如果存在则不执行代码。
  需求4:可以通过在内容上叠加渐变的png24图片来实现。IE6 不能很好地支持 png24。如果需要考虑性能,请在此容器中添加带有 display:none 的 IE6hack。下一个问题是解决图片叠加在文字上时文字如何被点击或选中的问题。这时候就需要一个特殊的css属性“pointer-events”。该属性的值设置为none后,鼠标可以通过选择绝对定位在文字上的图片下方的文字。
  集成代码如下:
  HTML
  复制代码代码如下:
  CSS
  复制代码代码如下:
  .messagewrap{overflow:hidden;position:relative;width:500px;height:300px}
  li{高度:50px;}
  .bottomcover{width:500px;height:45px;position:absolute;bottom:0;left:0;
  指针事件:无;背景:url(halftransp.png-600) 左下无重复;
  /*透明图片从背景颜色向上渐变*/ _display:none;/*降级为IE6体验*/)
  JS
  复制代码代码如下:
  以上是基于jquery的内容循环滚动模块的详细内容(模仿新浪微博未登录首页滚动微博显示),更多详情请关注其他相关html中文网站文章! 查看全部

  网站调用新浪微博内容(的问题是解决图片覆盖到文字之上,文字如何可以点击或选中)
  新浪微博还没有登录。新浪微博首页有一个“大家都在说话”模块,动态滚动最新的微博帖子。
  需求方面,该功能需要实时调用最新的微博数据。仅就前端开发而言,其需求可以拆分如下:
  1 内容继续滚动;
  2 新微博先下推下一条微博,再淡入;
  3 鼠标经过内容时暂停滚动;
  4 容器底部的渐变在背景色下消失。
  以上4个需求中,需求1-3是通过js技术实现的,需求4是通过css技术实现的。下面我们一一说下要求。
  需求一和需求二:内容连续滚动的需求有点类似于上一篇文章《小模块:公告滚动与暂停》介绍的功能。在那篇文章中,这个函数使用了CSS Position定位来控制整个ul列表的移动动画。结合需求2,我们可以写的更简单一些,让最后一个li元素有规律地插入第一个li元素的上方,然后使用animate方法改变li的高度和透明度。setTimeout 方法仍然用于无暂停滚动。在没有新数据加载的情况下,实现有限内容循环滚动。
  需求3:当鼠标经过并暂停时,可以在鼠标悬停时将属性的值添加到元素中。这里使用name属性来判断这个值是否存在,如果存在则不执行代码。
  需求4:可以通过在内容上叠加渐变的png24图片来实现。IE6 不能很好地支持 png24。如果需要考虑性能,请在此容器中添加带有 display:none 的 IE6hack。下一个问题是解决图片叠加在文字上时文字如何被点击或选中的问题。这时候就需要一个特殊的css属性“pointer-events”。该属性的值设置为none后,鼠标可以通过选择绝对定位在文字上的图片下方的文字。
  集成代码如下:
  HTML
  复制代码代码如下:
  CSS
  复制代码代码如下:
  .messagewrap{overflow:hidden;position:relative;width:500px;height:300px}
  li{高度:50px;}
  .bottomcover{width:500px;height:45px;position:absolute;bottom:0;left:0;
  指针事件:无;背景:url(halftransp.png-600) 左下无重复;
  /*透明图片从背景颜色向上渐变*/ _display:none;/*降级为IE6体验*/)
  JS
  复制代码代码如下:
  以上是基于jquery的内容循环滚动模块的详细内容(模仿新浪微博未登录首页滚动微博显示),更多详情请关注其他相关html中文网站文章!

网站调用新浪微博内容( 如何做一个新浪微博应用,你需要知道的一些事)

网站优化优采云 发表了文章 • 0 个评论 • 38 次浏览 • 2021-12-16 06:15 • 来自相关话题

  网站调用新浪微博内容(
如何做一个新浪微博应用,你需要知道的一些事)
  
  我开发的第一个新浪微博应用“蟹爪消息导入”已通过新浪审核。正如申请页面所说,正是因为我有这样的需求,所以我努力工作,从头开始。我忘记了 N 年的 PHP 和 JS。我利用空闲时间完成了这个申请。花了不到一周的时间。一开始,通过dome熟悉流程需要2天时间。后来发展很顺利,主要是百度加了。完成。
  作者最初在微博上使用了饭否,但饭否以某种方式关闭了它。然后他找到了和凡夫最相似的蟹爪,支持凡夫的介绍。
  后来新浪微博测试了,作者就开始用了。如果我觉得新浪微博好的话,我总是使用它。不过作者有采集习惯,希望能把所有微薄的东西都采集起来。恰巧新浪微博有一个开放的平台,所以才有了Up这个应用。
  如果你也有和作者一样的采集癖,恰好和作者用的微博有同样的轨迹,那你不妨也试试把饭否和蟹爪微博也导入新浪微博。
  如果要创建新浪微博应用,必须先到新浪微博开放平台创建一个账号。您可以参考初学者指南。有一个问题。创建申请时需要填写“申请地址”。对于没有主机资源的普通开发者来说,这是一个问题。但是如果用PHP打开,这里推荐SAE(SinaApp Engine)。
  SAE是Sina AppEngine(新浪应用引擎)的缩写。SAE是分布式Web应用开发和运营的服务平台。它不仅包括创建和部署Web应用程序的简单交互,还涉及一套完整的大规模分布式服务解决方案。. 通过SAE,用户可以轻松创建Web应用、定制Web应用、开发Web应用、部署Web应用、切换在线版本、删除应用,大大节省了开发者的开发成本和运维成本。
  SAE注册需要邀请码,否则只能注册为体验用户。体验用户只能试用5天。到期后,删除账户和所有代码。当然,您可以在 5 天内开发代码,申请更正,或者重新注册体验用户。
  在SAE中创建一个应用程序,然后在代码管理中创建一个新版本,这样就可以开始开发了。
  
  SAE 使用 SDK 工具上传代码。其实调用SDK工具有点勉强。它显然只是上传工具的增强版。
  
  PHP开发可以参考这两个文章:《微博开放平台OAuth的libSaeT上线》、《SaeTlib升级,原SaeT Class更名为SaeTOAuth,增加SaeTClient》。然后下载dome并上传测试。
  演示教程
  1. 下载,然后解压,修改config.php中的key
  2. 打开index.php,将第13行最后一个url改成你的网站对应的callback.php的url
  3. 直接上传到PHP空间
  注意index.php页面的回调页面地址一定要正确,尤其是版本号。否则会报如下错误:
  
 Error_code: 400; Error: 40022:Error: source paramter(appkey) is missing? <br />
  如果你正在访问,回调页面应该是;如果您使用版本号访问,则回调页面应该是。
  这个问题我调试了很久,群里大部分问题都说App Key和AppSecret不对,因为错误描述只能这么猜。我猜这个问题是由跨域丢失引起的。
  Dome 调整好之后,以后实施起来会比较容易。
  主要遇到以下问题:
  1.SAE上传文件比较麻烦,我换成了textarea。
  2.新浪微博API不允许频繁调用。估计是防止垃圾邮件。后来我用JS超时控制,每30秒通过AJAX发送。
  3.IE和FF Ajax兼容时出现乱码问题,由encodeURI(url)控制。
  下面是代码实现。
  索引.php
  
1 getRequestToken();
  
13 $aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false , 'http://' . $_SERVER['HTTP_APPNAME'] . '.sinaapp.com/callback.php');
  
14
  
15 $_SESSION['keys'] = $keys;
  
16
  
17 header("Location: ".$aurl);
  
18 ?>
  19 查看全部

  网站调用新浪微博内容(
如何做一个新浪微博应用,你需要知道的一些事)
  
  我开发的第一个新浪微博应用“蟹爪消息导入”已通过新浪审核。正如申请页面所说,正是因为我有这样的需求,所以我努力工作,从头开始。我忘记了 N 年的 PHP 和 JS。我利用空闲时间完成了这个申请。花了不到一周的时间。一开始,通过dome熟悉流程需要2天时间。后来发展很顺利,主要是百度加了。完成。
  作者最初在微博上使用了饭否,但饭否以某种方式关闭了它。然后他找到了和凡夫最相似的蟹爪,支持凡夫的介绍。
  后来新浪微博测试了,作者就开始用了。如果我觉得新浪微博好的话,我总是使用它。不过作者有采集习惯,希望能把所有微薄的东西都采集起来。恰巧新浪微博有一个开放的平台,所以才有了Up这个应用。
  如果你也有和作者一样的采集癖,恰好和作者用的微博有同样的轨迹,那你不妨也试试把饭否和蟹爪微博也导入新浪微博。
  如果要创建新浪微博应用,必须先到新浪微博开放平台创建一个账号。您可以参考初学者指南。有一个问题。创建申请时需要填写“申请地址”。对于没有主机资源的普通开发者来说,这是一个问题。但是如果用PHP打开,这里推荐SAE(SinaApp Engine)。
  SAE是Sina AppEngine(新浪应用引擎)的缩写。SAE是分布式Web应用开发和运营的服务平台。它不仅包括创建和部署Web应用程序的简单交互,还涉及一套完整的大规模分布式服务解决方案。. 通过SAE,用户可以轻松创建Web应用、定制Web应用、开发Web应用、部署Web应用、切换在线版本、删除应用,大大节省了开发者的开发成本和运维成本。
  SAE注册需要邀请码,否则只能注册为体验用户。体验用户只能试用5天。到期后,删除账户和所有代码。当然,您可以在 5 天内开发代码,申请更正,或者重新注册体验用户。
  在SAE中创建一个应用程序,然后在代码管理中创建一个新版本,这样就可以开始开发了。
  
  SAE 使用 SDK 工具上传代码。其实调用SDK工具有点勉强。它显然只是上传工具的增强版。
  
  PHP开发可以参考这两个文章:《微博开放平台OAuth的libSaeT上线》、《SaeTlib升级,原SaeT Class更名为SaeTOAuth,增加SaeTClient》。然后下载dome并上传测试。
  演示教程
  1. 下载,然后解压,修改config.php中的key
  2. 打开index.php,将第13行最后一个url改成你的网站对应的callback.php的url
  3. 直接上传到PHP空间
  注意index.php页面的回调页面地址一定要正确,尤其是版本号。否则会报如下错误:
  
 Error_code: 400; Error: 40022:Error: source paramter(appkey) is missing? <br />
  如果你正在访问,回调页面应该是;如果您使用版本号访问,则回调页面应该是。
  这个问题我调试了很久,群里大部分问题都说App Key和AppSecret不对,因为错误描述只能这么猜。我猜这个问题是由跨域丢失引起的。
  Dome 调整好之后,以后实施起来会比较容易。
  主要遇到以下问题:
  1.SAE上传文件比较麻烦,我换成了textarea。
  2.新浪微博API不允许频繁调用。估计是防止垃圾邮件。后来我用JS超时控制,每30秒通过AJAX发送。
  3.IE和FF Ajax兼容时出现乱码问题,由encodeURI(url)控制。
  下面是代码实现。
  索引.php
  
1 getRequestToken();
  
13 $aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false , 'http://' . $_SERVER['HTTP_APPNAME'] . '.sinaapp.com/callback.php');
  
14
  
15 $_SESSION['keys'] = $keys;
  
16
  
17 header("Location: ".$aurl);
  
18 ?>
  19

网站调用新浪微博内容( 一个自动发布新浪微博的机器人(图)分享(组图) )

网站优化优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2021-12-15 22:16 • 来自相关话题

  网站调用新浪微博内容(
一个自动发布新浪微博的机器人(图)分享(组图)
)
  
  作者 | 周道
  生产 | 萝卜杂烩
  最近在研究使用Python制作各种类型的机器人。今天给大家分享一个自动发布新浪微博的机器人。
  基本思想
  其实实现一个简单的微博机器人自动发布并不难。你只需要每天准时找到要发布的素材(一般是爬虫),然后通过微博开放的API接口自动发布。
  材料
  材料方面,我选择了金山词霸的每日一句。我们可以抓取这个网站的相关信息来组成我们的微博素材。
  微博接口
  微博为开发者提供开放平台
  当然,在使用这个平台之前,我们仍然需要注册并创建一个应用程序。比如像我一样,创建一个应用程序
  
  然后我们还需要设置一个安全域名(以后发布微博时会用到),在应用信息-&gt;基本信息中设置。
  
  还需要设置应用回调地址,在应用信息-&gt;高级信息中设置。
  
  当然,对于微博API的调用,我们可以使用别人打包的第三方库,操作起来更方便。这里我使用了一个名为“weibo”的库,直接使用pip安装。
  pip 安装微博
  但是我遇到了一个安装问题,错误如下
  Traceback (most recent call last):
  File "setup.py", line 15, in 
    long_description=open(&#39;README.rst&#39;).read(),
UnicodeDecodeError: &#39;gbk&#39; codec can&#39;t decode byte 0xae in position 241: illegal multibyte sequence
  好像是编码问题,我们可以通过修改源代码来规避
  
  long_description=open(&#39;README.rst&#39;, encoding=&#39;utf-8&#39;).read(),
  python setup.py build
python setup.py install
  至此就可以成功安装微博库了
  准备工作和写作思路就是这些,下面我们来看看具体的过程和代码
  自动发布微博
  根据微博库的文档,操作微博还是比较好用的。您只需要在我们创建微博应用时提供App Key和App Secret以及应用回调地址信息即可。简单的调用代码如下
  from weibo import Client
c = Client(&#39;App Key&#39;, &#39;App Secret&#39;, &#39;https://www.luobodazahui.top&#39;, username=&#39;username&#39;, password=&#39;password&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名)
  我们运行代码,如果没有任何反应,我们将可以在该帐户下的微博中看到刚刚发布的微博。
  
  最简单的微博已经发布成功了,那么我们可以发布带图片的微博,我们试试吧
  根据接口status/share的文档,我们可以传入pic参数来上传图片
  
  我们传入 pic 参数并尝试
  f = open(&#39;4.png&#39;, &#39;rb&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名, pic=f)
f.close()
  是的,它可以正常发布带图片的微博
  
  那么现在微博的自动发布就完成了,下面我们来看看如何自动获取微博素材
  微博素材
  对于金山词霸的每日一句,我们可以使用以下API获取每日信息
  可以看到界面返回如下信息
  
  我们可以直接使用requests库来调用这个接口
  import requests
url = &#39;http://open.iciba.com/dsapi/&#39;
res = requests.get(url)
content_e = res.json()[&#39;content&#39;]
content_c = res.json()[&#39;note&#39;]
content = content_e + &#39;\n&#39; + content_c
content_t = res.json()[&#39;picture2&#39;]
  现在我们封装两个函数来完成功能
  def weibo(content, picture):
    ff = requests.get(picture).content
    c = Client(app_key, app_secret, &#39;https://www.luobodazahui.top&#39;, username=username, password=password)
    c.post(&#39;statuses/share&#39;, status=content + &#39;https://www.luobodazahui.com&#39;, pic=ff)
def auto_weibo():
    url = &#39;http://open.iciba.com/dsapi/&#39;
    res = requests.get(url)
    content_e = res.json()[&#39;content&#39;]
    content_c = res.json()[&#39;note&#39;]
    content = content_e + &#39;\n&#39; + content_c
    content_t = res.json()[&#39;picture2&#39;]
    weibo(content, content_t)
    return &#39;OK&#39;
  现在我们可以创建一个定时任务,每天7点运行脚本。
  0 7 * * * python auto_weibo.py
  最终效果如下
  
  
  
  过去的
  预计
  回到
  顾
  技术
  6种常用的绘制地图的方法,代码直播!
  信息
  DeepMind 打造 AI 游戏系统
  技术
  9个简单易用的python文件操作方法
  信息
  程序员是复制粘贴工具的人吗?还是…
   查看全部

  网站调用新浪微博内容(
一个自动发布新浪微博的机器人(图)分享(组图)
)
  
  作者 | 周道
  生产 | 萝卜杂烩
  最近在研究使用Python制作各种类型的机器人。今天给大家分享一个自动发布新浪微博的机器人。
  基本思想
  其实实现一个简单的微博机器人自动发布并不难。你只需要每天准时找到要发布的素材(一般是爬虫),然后通过微博开放的API接口自动发布。
  材料
  材料方面,我选择了金山词霸的每日一句。我们可以抓取这个网站的相关信息来组成我们的微博素材。
  微博接口
  微博为开发者提供开放平台
  当然,在使用这个平台之前,我们仍然需要注册并创建一个应用程序。比如像我一样,创建一个应用程序
  
  然后我们还需要设置一个安全域名(以后发布微博时会用到),在应用信息-&gt;基本信息中设置。
  
  还需要设置应用回调地址,在应用信息-&gt;高级信息中设置。
  
  当然,对于微博API的调用,我们可以使用别人打包的第三方库,操作起来更方便。这里我使用了一个名为“weibo”的库,直接使用pip安装。
  pip 安装微博
  但是我遇到了一个安装问题,错误如下
  Traceback (most recent call last):
  File "setup.py", line 15, in 
    long_description=open(&#39;README.rst&#39;).read(),
UnicodeDecodeError: &#39;gbk&#39; codec can&#39;t decode byte 0xae in position 241: illegal multibyte sequence
  好像是编码问题,我们可以通过修改源代码来规避
  
  long_description=open(&#39;README.rst&#39;, encoding=&#39;utf-8&#39;).read(),
  python setup.py build
python setup.py install
  至此就可以成功安装微博库了
  准备工作和写作思路就是这些,下面我们来看看具体的过程和代码
  自动发布微博
  根据微博库的文档,操作微博还是比较好用的。您只需要在我们创建微博应用时提供App Key和App Secret以及应用回调地址信息即可。简单的调用代码如下
  from weibo import Client
c = Client(&#39;App Key&#39;, &#39;App Secret&#39;, &#39;https://www.luobodazahui.top&#39;, username=&#39;username&#39;, password=&#39;password&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名)
  我们运行代码,如果没有任何反应,我们将可以在该帐户下的微博中看到刚刚发布的微博。
  
  最简单的微博已经发布成功了,那么我们可以发布带图片的微博,我们试试吧
  根据接口status/share的文档,我们可以传入pic参数来上传图片
  
  我们传入 pic 参数并尝试
  f = open(&#39;4.png&#39;, &#39;rb&#39;)
c.post(&#39;statuses/share&#39;, status=&#39;haha&#39; + 安全域名, pic=f)
f.close()
  是的,它可以正常发布带图片的微博
  
  那么现在微博的自动发布就完成了,下面我们来看看如何自动获取微博素材
  微博素材
  对于金山词霸的每日一句,我们可以使用以下API获取每日信息
  可以看到界面返回如下信息
  
  我们可以直接使用requests库来调用这个接口
  import requests
url = &#39;http://open.iciba.com/dsapi/&#39;
res = requests.get(url)
content_e = res.json()[&#39;content&#39;]
content_c = res.json()[&#39;note&#39;]
content = content_e + &#39;\n&#39; + content_c
content_t = res.json()[&#39;picture2&#39;]
  现在我们封装两个函数来完成功能
  def weibo(content, picture):
    ff = requests.get(picture).content
    c = Client(app_key, app_secret, &#39;https://www.luobodazahui.top&#39;, username=username, password=password)
    c.post(&#39;statuses/share&#39;, status=content + &#39;https://www.luobodazahui.com&#39;, pic=ff)
def auto_weibo():
    url = &#39;http://open.iciba.com/dsapi/&#39;
    res = requests.get(url)
    content_e = res.json()[&#39;content&#39;]
    content_c = res.json()[&#39;note&#39;]
    content = content_e + &#39;\n&#39; + content_c
    content_t = res.json()[&#39;picture2&#39;]
    weibo(content, content_t)
    return &#39;OK&#39;
  现在我们可以创建一个定时任务,每天7点运行脚本。
  0 7 * * * python auto_weibo.py
  最终效果如下
  
  
  
  过去的
  预计
  回到
  顾
  技术
  6种常用的绘制地图的方法,代码直播!
  信息
  DeepMind 打造 AI 游戏系统
  技术
  9个简单易用的python文件操作方法
  信息
  程序员是复制粘贴工具的人吗?还是…
  

官方客服QQ群

微信人工客服

QQ人工客服


线