投稿指南
来稿应自觉遵守国家有关著作权法律法规,不得侵犯他人版权或其他权利,如果出现问题作者文责自负,而且本刊将依法追究侵权行为给本刊造成的损失责任。本刊对录用稿有修改、删节权。经本刊通知进行修改的稿件或被采用的稿件,作者必须保证本刊的独立发表权。 一、投稿方式: 1、 请从 我刊官网 直接投稿 。 2、 请 从我编辑部编辑的推广链接进入我刊投审稿系统进行投稿。 二、稿件著作权: 1、 投稿人保证其向我刊所投之作品是其本人或与他人合作创作之成果,或对所投作品拥有合法的著作权,无第三人对其作品提出可成立之权利主张。 2、 投稿人保证向我刊所投之稿件,尚未在任何媒体上发表。 3、 投稿人保证其作品不含有违反宪法、法律及损害社会公共利益之内容。 4、 投稿人向我刊所投之作品不得同时向第三方投送,即不允许一稿多投。 5、 投稿人授予我刊享有作品专有使用权的方式包括但不限于:通过网络向公众传播、复制、摘编、表演、播放、展览、发行、摄制电影、电视、录像制品、录制录音制品、制作数字化制品、改编、翻译、注释、编辑,以及出版、许可其他媒体、网站及单位转载、摘编、播放、录制、翻译、注释、编辑、改编、摄制。 6、 第5条所述之网络是指通过我刊官网。 7、 投稿人委托我刊声明,未经我方许可,任何网站、媒体、组织不得转载、摘编其作品。

气象信息在新浪微博自动发布的实现

来源:自动化应用 【在线投稿】 栏目:期刊导读 时间:2021-01-26
作者:网站采编
关键词:
摘要:1技术方案 使用新浪微博的途径有电脑网页、手机App客户端两种,电脑网页客户端是用户通过网页和服务器进行交互的过程,是通过HTTP协议进行的,因此可以利用Socket编程模拟HTTP会话过

1技术方案

使用新浪微博的途径有电脑网页、手机App客户端两种,电脑网页客户端是用户通过网页和服务器进行交互的过程,是通过HTTP协议进行的,因此可以利用Socket编程模拟HTTP会话过程,在程序中重复提交数据的过程就可以实现批量上传。模拟HTTP[1-3]会话过程的关键是保持会话,即在数据包头部附带相应的Cookie。在登录过程中,服务器会返回一系列的Cookie值,保存这些Cookie值,在提交数据时,需要用到这些Cookie值。软件使用C#语言实现,先抓取用户通过网页和服务器交互的所有数据包,分析交互过程中的数据包,将数据包分为2个部分,①登录过程的数据包;②上传气象信息的数据包。然后利用Socket模拟HTTP会话过程:和服务器建立连接,依次发送数据包,接收服务器的响应,依据响应进行相应的处理,下面将介绍具体的实现过程。

2实现过程

2.1 登陆参数算法

打开浏览器按F12打开开发者工具,通过浏览器协议分析器分析登陆数据包,可以看到登陆网页版新浪微博首先要访问,/sso/ entry=weibo,获取登录所需的加密参数nonce、pubkey、rsaky,通过分析js代码,可以找出加密算法RSAEn crypt,如图1所示。

图1密算法RSAEncrypt

找到js加密算法后,可以通过C#编程语言来运行js函数直接得出rsa算法的结果。

2.2 登陆新浪微博

访问

2.3 “上传“的图片和文字

通过网页代码分析工具可以找到上传新浪微博图文的url地址为“

图2上传文件的代码

新浪微博支持文字和图片的发送,上传图片只能每次一图,此限制是服务器设定的,我们也无法改变,图2中参数PostdataByte的值需要由图片文件转为byte数组,Image img = new Bitmap(图片路径);MemoryStreamstream=(stream,);BinaryReaderbr=newBinaryReader(stream);byte[]photo=(),参数PostDataType必须是,请求成功后服务器会返来pid值,访问链接

2.4 “气象信息”分类发送

每日所需发送的气象信息有“一日预报”、“七日预报”、“城市火险预报”、“道路交通预报”、“旅游景区预报”、“生活指数预报”共计6种,经过我们的测试发现,新浪微博限制了文件发送间隔,多个文件必须逐一间隔5秒发送,软件自动检测气象文件逐一自动发送。

3结束语

随着新技术的发展,智慧气象成为新气象主题,气象信息的发布手段多种多样,完全依靠人工编辑发送已成为过去,也无法跟随时代的发展,利用技术手段及时、多途径发布气象信息才能满足新时代人们日常生产、生活的需要,让气象更好的服务于民。

[1] 黄延炜,刘嘉勇.新浪微博数据获取技术研究[J].信息安全与通信保密,2013,(6):71~73,76.

[2] 陈智,梁娟,谢兵,等.新浪微博数据爬取研究[J].物联网技术,2016,6(12):60~63.

[3] 吴文辉,肖治庭.模拟HTTP会话实现批量数据上传[J].电脑编程技巧与维护,2011,(22):109~111.

1技术方案使用新浪微博的途径有电脑网页、手机App客户端两种,电脑网页客户端是用户通过网页和服务器进行交互的过程,是通过HTTP协议进行的,因此可以利用Socket编程模拟HTTP会话过程,在程序中重复提交数据的过程就可以实现批量上传。模拟HTTP[1-3]会话过程的关键是保持会话,即在数据包头部附带相应的Cookie。在登录过程中,服务器会返回一系列的Cookie值,保存这些Cookie值,在提交数据时,需要用到这些Cookie值。软件使用C#语言实现,先抓取用户通过网页和服务器交互的所有数据包,分析交互过程中的数据包,将数据包分为2个部分,①登录过程的数据包;②上传气象信息的数据包。然后利用Socket模拟HTTP会话过程:和服务器建立连接,依次发送数据包,接收服务器的响应,依据响应进行相应的处理,下面将介绍具体的实现过程。2实现过程2.1 登陆参数算法打开浏览器按F12打开开发者工具,通过浏览器协议分析器分析登陆数据包,可以看到登陆网页版新浪微博首先要访问,/sso/ entry=weibo,获取登录所需的加密参数nonce、pubkey、rsaky,通过分析js代码,可以找出加密算法RSAEn crypt,如图1所示。图1密算法RSAEncrypt找到js加密算法后,可以通过C#编程语言来运行js函数直接得出rsa算法的结果 登陆新浪微博访问 “上传“的图片和文字通过网页代码分析工具可以找到上传新浪微博图文的url地址为“ img = new Bitmap(图片路径);MemoryStreamstream=(stream,);BinaryReaderbr=newBinaryReader(stream);byte[]photo=(),参数PostDataType必须是,请求成功后服务器会返来pid值,访问链接 “气象信息”分类发送每日所需发送的气象信息有“一日预报”、“七日预报”、“城市火险预报”、“道路交通预报”、“旅游景区预报”、“生活指数预报”共计6种,经过我们的测试发现,新浪微博限制了文件发送间隔,多个文件必须逐一间隔5秒发送,软件自动检测气象文件逐一自动发送。3结束语随着新技术的发展,智慧气象成为新气象主题,气象信息的发布手段多种多样,完全依靠人工编辑发送已成为过去,也无法跟随时代的发展,利用技术手段及时、多途径发布气象信息才能满足新时代人们日常生产、生活的需要,让气象更好的服务于民。[参考文献][1] 黄延炜,刘嘉勇.新浪微博数据获取技术研究[J].信息安全与通信保密,2013,(6):71~73,76.[2] 陈智,梁娟,谢兵,等.新浪微博数据爬取研究[J].物联网技术,2016,6(12):60~63.[3] 吴文辉,肖治庭.模拟HTTP会话实现批量数据上传[J].电脑编程技巧与维护,2011,(22):109~111.

文章来源:《自动化应用》 网址: http://www.zdhyyzz.cn/qikandaodu/2021/0126/1039.html



上一篇:自动足部烘干机的设计
下一篇:基于组态的化肥原料配料系统的设计

自动化应用投稿 | 自动化应用编辑部| 自动化应用版面费 | 自动化应用论文发表 | 自动化应用最新目录
Copyright © 2018 《自动化应用》杂志社 版权所有
投稿电话: 投稿邮箱: