美文网首页
Python+Selenium自动发送新浪微博

Python+Selenium自动发送新浪微博

作者: 数据分析刀刀 | 来源:发表于2018-10-05 21:47 被阅读0次

前言

        刚学习了Python爬虫,想找个项目练习一下,于是尝试使用Python自动帮我更新新浪微博。在实现的过程中遇到了很多问题,不断解决的过程中确实很好地锻炼了自己的编程能力。生活需要仪式感当然也需要成就感,用学到的知识去做一些有趣的事情也是激励我们不断学习下去的动力~

        我把自动发送微博分成了以下三步:

        一.自动登录新浪微博;

        二.通过爬虫获取微博发送内容;

        三.自动发送。

        下面我们就来分别说说怎么分别实现这几个步骤。

1.自动登录新浪微博

        这里使用到了一个自动化测试工具——Selenium(Python中提供了Selenium库)。简单来说,Selenium可以像真人一样打开浏览器并操作网页中你想要操作的元素,使用这个工具可以很方便地帮助我们完成网站的登录操作。使用前,你需要完成以下准备工作:

安装Selenium

         在命令行中,输入“pip install selenium” 即可:

安装Selenium

下载浏览器,建议使用Firefox

下载geckodriver

        下载地址:https://github.com/mozilla/geckodriver/releases,根据自己的电脑选择合适的版本,笔者下载的是Windows系统64位版本。

下载geckodriver

        下载好后解压,放在Python的scripts目录下,如图所示:

将geckodriver放到python的scripts目录下

        现在我们看看Python中如何使用Selenium来操作浏览器实现自动登录:

自动登录代码

        这里选择了用QQ登录新浪微博,因为直接登录可能会遇到验证码问题,新浪微博的验证码笔者目前还没有研究过如何破解,而QQ的滑动验证相对来说是比较好破解的,上述代码中的“slip_verify()”是自定义的一个函数,用于破解QQ登录过程中可能出现的滑动验证,代码如下:

滑块验证代码

2.通过爬虫获取微博发送内容

        以爬取果壳网首页的文章为例,代码如下:

果壳网爬虫代码

        上面这段代码从果壳网首页获取了一篇文章(包括标题和链接),长这样:

        【科技】除了猜想,黎曼还有哪些不为人知的故事?https://www.guokr.com/article/445628/

3.自动发送微博

        登录成功、获取素材都搞定了,现在只差把这些内容发送出去。我们已经知道通过Selenium可以操作网页元素,那么现在只需要完成两个动作微博就可以顺利发出去了:将内容输入到文本框;点击“发布”按钮。实现代码如下:

发布微博

结语

        结合这三步,如果我们从多个网站获取素材,再加上一些循环条件就可以每天定期更新自己的微博啦。时间有点晚还在肯德基,准备回家咯,回头会把整个程序的源代码贴出供大家参考,谢谢啦~

相关文章

  • Python+Selenium自动发送新浪微博

    前言 刚学习了Python爬虫,想找个项目练习一下,于是尝试使用Python自动帮我更新新浪微博。在实现的...

  • hexo使用新浪微博图床自动部署

    使用新浪微博图床请先参考之前两篇文章: python模拟微博登陆 使用新浪微博图床 自动部署涉及到以下文章: Li...

  • 简书为主

    移转阵地,以简书取代新浪微博!这里转载、发送都特方便,没有微博那种超级浓重的商业气氛!

  • 模仿新浪微博

    DSLolita lolita objective-c 版本 模仿新浪微博做的一款app,有发送博文,评论,点赞,...

  • 网页分享

    Title 1、新浪微博 新浪微博 2、腾讯微博 腾讯微博 3、开...

  • Python+selenium自动上传博客图片至新浪微博相册

    Why? 写博客的时候每次使用图片都得先上传到新浪微博,然后在得到链接插入到markdown中。这样操作多来几次就...

  • 利用新浪微博日自动吸粉200+的技术-人人可做

    接着上次的内容,继续做分享。今天讲利用新浪微博来吸粉引流的其他方法。 04 / 巧用回复 新浪微博有一个自动回复功...

  • VBS脚本自动发送微博

    打开txt,写入以下VBS代码: 运行,切换至微博窗口即可。

  • 新浪微博

    微博个人信息保护政策(修订版) 为切实保护微博用户隐私权,优化用户体验,微博根据现行法规及政策,制定本《个人信息保...

  • 新浪微博

    新浪微博日活跃用户6000万,作为国内最火的社交分享网络媒体自然是微商推广一大阵地,因为营销从来都是客户在哪里,营...

网友评论

      本文标题:Python+Selenium自动发送新浪微博

      本文链接:https://www.haomeiwen.com/subject/upoqaftx.html