神级python程序员只需要一个公众号,再也不会错过重要资讯

Python(发音:英[?pa?θ?n],美[?pa?θɑ:n]),是一种面向对象、直译式电脑编程语言,也是一种功能强大的通用型语言,已经具有近二十年的发展历史,成熟且稳定。它包含了一组完善而且容易理解的标准库,能够轻松完成很多常见的任务。它的语法非常简捷和清晰,与其它大多数程序设计语言不一样,它使用缩进来定义语句。

Python支持命令式程序设计、面向对象程序设计、函数式编程、面向切面编程、泛型编程多种编程范式。与Scheme、Ruby、Perl、Tcl等动态语言一样,Python具备垃圾回收功能,能够自动管理存储器使用。它经常被当作脚本语言用于处理系统管理任务和网络程序编写,然而它也非常适合完成各种高级任务。Python虚拟机本身几乎可以在所有的作业系统中运行。使用一些诸如py2exe、PyPy、PyInstaller之类的工具可以将Python源代码转换成可以脱离Python解释器运行的程序。

此次实战项目清单:

WeRoBot框架开发自动回复微信机器人

Tornado开发后台

MongoDB做数据存贮

Scrapyd部署爬虫

Scrapy编写爬虫

把这些都部署在阿里云服务器上

用Python编写

把这些东西混在一起,就实现了,通过微信公众号来获取每日新鲜资讯的功能

废话不多说,先上图,看效果!

网页丑,请原谅我,我不是专门写前端的,前端知识我会日后补上的。为什么选择电脑端访问,因为手机上访问可能还是有些限制,但是电脑端访问完全没有问题啊!这效果赞不赞?牛不牛?

开发思路

既然看到了效果,那么我们现在就来扯一扯实现这个过程的来龙去脉。

首先,我们白日做梦一下, 想着我怎么能够通过微信公众号来访问网站啊?

这里给出答案:我们需要一个微信自动回复的机器人,因为这样,我就不需要每天自己登陆网页端,复制黏贴编写材料了,用电脑来代替我的劳动,这样我多轻松。

这里就是WeRoBot的使用场景。

接下来,我们如果有了自动回复机器人,那么我们拿什么来看呢?

这里给出答案:我们需要在远端架设一台服务器,上面需要跑起来一套网站的服务。给我们提供一个网页,里面有我们想要的资讯信息。

这就是阿里云服务器(腾讯的也可以)和Tornado的使用场景。

接着,我们还得研究,我网页上的数据,从哪里来啊??

这里给我出答案:网页端读取的数据,都应该是从数据库中读的。

这里就是MongoDB的使用场景。

知道数据从哪里读取的了,那么数据是从哪里来的啊?

这里给出答案:数据是来源,我们可以通过爬虫程序来爬下来。

这里就是Scray的使用场景了。

想到这里基本差不多了,中间在加一些粘合剂,我们可以通过Scrapyd来把爬虫部署到远端服务器上,再通过一个定时装置来定时执行爬虫程序。这样我们就会有源源不断的数据更新了。而网页端,我们只需要展示当天的数据就可以了。这么下来,

一切都思路都很完美,就差一个程序员了,对吗?

我们选择用Python来搞事情,因为这个东西,很适合搞事情。

我们既然把整个逻辑都想好了,那么我们倒着来撸这件事情。

接下来,我们用到了MongoDB

那么前面提到的这几个东西,就剩下WeRoBot和Tornado了。这个我准备在下一期文章中详细给大家讲解怎么开发。这里面的坑其实还不少,但是,我已经给大家踩过了。大家跟着我的步骤一步一步来就完全OK。

整体回顾

远端的服务器上面的爬虫,是Scrapy写的虫子。

通过Tornado的定时执行功能,会每一个小时执行一次。

将爬下来的数据存入到MongoDB中。

Tornado的路径对于的GET方法,会从MongoDB中读取数据,并传入到已经写好的html模板中。

WeRoBot则是依靠Tornado部署的,嵌入到了Tornado服务中。通过微信传过来的特定的指令,来做出返回结果并返回给客户端。

Python可以做什么?

web开发和 爬虫是比较适合 零基础的

自动化运维 运维开发 和 自动化测试 是适合 已经在做运维和测试的人员

大数据 数据分析 这方面 是很需要专业的 专业性相对而言比较强

科学计算 一般都是科研人员 在用

机器学习 和 人工智能 首先 学历 要求高 其次 高数要求高 难度很大

我有一个微信公众号,经常会分享一些python技术相关的干货;如果你喜欢我的分享,可以用微信搜索“python语言学习”关注

欢迎大家加入千人交流答疑裙:699+749+852

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值