Python爬虫入门有意思的小长代码

作者: 璃沫仙人 | 来源:发表于2019-01-21 19:07 被阅读7次

    一段有意思的代码,有兴趣的可以研究研究。

    需求

    用户收到短信如:购买了电影票或者火车票机票之类的事件。然后app读取短信,解析短信,获取时间地点,然后后台自动建立一个备忘录,在事件开始前1小时提醒用户。

    设计

    开始我们将解析的功能放在了服务端,但是后来考虑到用户隐私问题。后来将解析功能放到了app端,服务端只负责收集数据,然后将新数据发送给app端。

    关于服务端主要是分离出两个功能,一、响应app端请求返回数据。二、爬取数据,存入数据库。

    响应请求返回数据使用java来做,而爬取数据存入数据库使用python来做,这样分别使用不同语言来做是因为这两种语言各有优势,java效率比python高些,适合做web端,而爬取数据并不是太追求性能且python语言和大量的库适合做爬虫。

    代码

    本项目使用python3的版本

    了解这个项目你只需要有简单的python基础,能了解python语法就可以。其实我自己也是python没学完,然后就开始写,遇到问题就百度,边做边学这样才不至于很枯燥,因为python可以做一些很有意思的事情,比如模拟连续登录挣积分,比如我最近在写一个预定模范出行车子的python脚本。推荐看廖雪峰的python入门教程

    首先带大家看看我的目录结构,开始我打算是定义一个非常好非常全的规范,后来才发现由于自己不熟悉框架,而是刚入门级别,所以就放弃了。从简而入:

    小编建了一个学习Python的QQ群,欢迎━(`∀´)ノ亻!小伙伴的加入哦!

    下面咱们按照上图中的顺序,从上往下一个一个文件的讲解init.py包的标识文件,python包就是文件夹,当改文件夹下有一个init.py文件后它就成为一个package,我在这个包中引入一些py供其他py调用。

    init.py

    下面两个是配置文件,第一个是开发环境的(windows),第二个是测试环境的(linux),然后再根据不同系统启用不同的配置文件

    conf_dev.py

    conf_test.py

    下面文件是一个util文件,主要是读取原文件的内容,还有将新内容写入原文件。

    FileUtil.py

    下面这个main方法控制着执行流程,其他的执行方法调用这个main方法

    MainUtil.py

    将更新的内容插入mongodb中

    MongoUtil.py

    下面真正的执行方法来了,这五个py分别表示爬取五种信息:机场名、航班号、电影名、列车号、列车站。他们的结构都差不多,如下:

    scratch_airport_name.py:爬取全国机场

    scratch_flight_number.py:爬取全国航班号

    !/usr/bin/python

    scratch_movie_name.py:爬取最近上映的电影

    !/usr/bin/python

    scratch_train_number.py:爬取全国列车号

    scratch_train_station.py:爬取全国列车站

    将项目放到测试服务器(centos7系统)中运行起来,我写了一个crontab,定时调用他们,下面贴出crontab。

    文章来自网络,如有侵权联系小编删除!

    相关文章

      网友评论

        本文标题:Python爬虫入门有意思的小长代码

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