初步学习了python的基本语法,然后结合项目写了一个爬虫程序,主要功能是爬取360应用市场的APP相关信息,这次简单介绍一下。

程序主题包括一个程序启动类,一个写数据库类,一个360市场app的信息获取类,一个正则解析类,一个日志功能类,利用的是最基本的urllib库,没有使用开源的框架。其中日志功能类没有写好,但是在实际的应用过程中发现,会经常出现由于网络的波动影响到抓取以及特殊字符导致数据库写失败等问题,这个过程中,我都是手动重启的。如果把这些日志记录下来,然后针对相应的情况做自动重启处理,就比较不错。例如如果软件名称中存在比较特殊的字符。比如http://zhushou.360.cn/detail/index/soft_id/2916889这个页面中应用标题的引号,在写数据库的时候会提示1064: Youhave an error in your SQL syntax….,当时并没有注意,后来相关的错误提示显示出来的。

由于性能的问题,我写的小程序爬了半个月,因为相关的应用,下载量,版本等相关信息在不断的变化,会与现在的数据有些许差异,但是一般差异不会太大,因此本文可以作为某些分析的参考。

总共爬取的网页个数为320万个左右,有效页面个数为111万个左右,我是单线程的爬取速度是每秒在2-5个左右。如果要求一天之内爬完320万个网页,则需要每秒40个左右,而现有的开源爬虫框架据说有的可以支持每分钟5000个左右。这样快的速度一般是需要多线程的支持,需要引入消息队列机制。有的网站会限制请求速度(多个代理请求来解决)。

下面对我爬取的数据库做一次简单的分析。

数据库的总条目数量是1112499个,平台的应用每天都在增加,但基本的数量级是这个样子。

360手机市场下载量过亿的应用目前统计到的为73个,如下图1、图2、图3所示:

图1

图2

图3

让我比较意外的几个应用包括以下几个1、我查查;2、ChatON;3、书旗小说;4、Samsung PushService;5、Google 文字转语音。除了ChatON,其余最近都有更新。我们知道手机APP的更新是非常的频繁,如果近期没有更新,则说明,这款应用已经是昨日黄花了。

表1是对数据库做了几次筛选之后的结果

表1

总应用个数

1112499

下载量为0

339126

下载量<100

789330

下载量<1万

1058300

下载量>100万

3526

下载量>1亿

73

2016/04/01后更新

22372

另外感到震惊的是,下载量为0 的应用有339126个,下载量小于100的应用有789330个,下载量小于10000的应用有1058300个。下载量大于100万的应用有3526个,下载量大于1000万的应用有582个。

2016-04-01也就是愚人节之后有更新的软件个数为22372个,下载量大于5万的为22892,这两个数大致相当。

图4、图5、图6列举了部分当时下载量为0的应用情况。

图4

图5

图6

可以看到很多下载量很少的主要是一些英文的应用,虽然在大陆上外网需要翻墙,但是360手机市场还是将很多国外的应用收录了。比如Pandora作为美国第二大正版在线音乐提供商,下载之后,需要VPN为美国翻墙的网络才能用。这也是360手机市场能够拥有百万app的原因,我猜测360手机市场应该收录了google_play里面的大部分应用(没有验证过)。

以上就是简单学习python后爬虫练习的情况。以后会根据情况采用一些框架,使得爬取的速度更快一些,更自动化一些。

Python抓取360手机市场APP信息并做简单分析相关推荐

  1. python爬取360手机助手APP信息

    这是一个爬虫软件,用来爬取360应用市场,App软件信息,现阶段代码只能爬取下载量,如需爬取别的信息,请自行添加代码. 使用方法: 1.在D盘根目录新建.tet文件,命名为App_name,并把App ...

  2. 爬虫学习(二)--爬取360应用市场app信息

    欢迎加入python学习交流群 667279387 爬虫学习 爬虫学习(一)-爬取电影天堂下载链接 爬虫学习(二)–爬取360应用市场app信息 代码环境:windows10, python 3.5 ...

  3. python 抓取解析接口数据_[干货]用python抓取摩拜单车API数据并做可视化分析(源码)...

    原标题:[干货]用python抓取摩拜单车API数据并做可视化分析(源码) 在APP中能看到很多单车,但走到那里的时候,才发现车并不在那里.有些车不知道藏到了哪里:有些车或许是在高楼的后面,由于有GP ...

  4. Python 抓取微信公众号账号信息

    搜狗微信搜索提供两种类型的关键词搜索,一种是搜索公众号文章内容,另一种是直接搜索微信公众号.通过微信公众号搜索可以获取公众号的基本信息及最近发布的10条文章,今天来抓取一下微信公众号的账号信息 爬虫 ...

  5. 微信好友大揭秘,使用Python抓取朋友圈数据,通过人脸识别全面分析好友,一起看透你的“朋友圈”...

    微信:一个提供即时通讯服务的应用程序,更是一种生活方式,超过数十亿的使用者,越来越多的人选择使用它来沟通交流. 不知从何时起,我们的生活离不开微信,每天睁开眼的第一件事就是打开微信,关注着朋友圈里好友 ...

  6. 抓取百度手机市场、应用宝、360手机市场应用

    这几天想根据apk应用名去几个市场上搜索应用,并下载这些apk.查看了下这个3个市场的apk检索结果,都有一个好处是在检索页面就可以得到这些apk的下载链接.腾讯应用宝是使用ajax查询并返回json ...

  7. Python爬取360手机助手评论——以百度地图为例

    想做竞品分析,打算先从应用市场爬一些应用的用户用户评论作为素材:这次爬取的是360手机助手网站,结尾附爬取完的百度地图和高德地图的用户评论文件~ 网页链接:http://zhushou.360.cn/ ...

  8. Python抓取糗事百科网页信息以及源码下载

    最近学习了一段时间的python,看书觉得挺简单,但是到真正高代码实现,确实不熟,下面这个东西搞了一下午时间,在别人的基础上改的,就这样也搞了一下午.算是有点入门了吧,不过,学习新东西,最快的方法就是 ...

  9. python抓取_如何用Python抓取最便宜的机票信息(下)

    到目前为止,我们有一个函数来加载更多的结果,还有一个函数来抓取这些结果.我可以在这里结束这篇文章,您仍然可以手动使用这些工具,并在您自己浏览的页面上使用抓取功能,但我确实提到了一些关于向您自己发送电子 ...

最新文章

  1. Redis 笔记(01)— 安装、启动配置、开启远程连接、设置密码、远程连接
  2. 知识点2-对二进制的运用
  3. PHP 表单和用户输入
  4. 【转】wpf从我炫系列1----布局控件的使用(上)
  5. android Content provider 组件
  6. mysql ---- 多表设计
  7. 怎么辨别iPhone手机的真伪?
  8. ARM64体系结构与编程之cache必修课(下)
  9. javascript上传文件到腾讯云COS
  10. 传言阿里P10赵海平,被P11多隆打3.25后离职,如何评价赵海平对王垠的面试?
  11. 掌握这2个关键点,轻松摆脱沉迷游戏的现状(醍醐灌顶)
  12. C语言高级教程-C语言数组(三)
  13. 互联网创业项目加盟,超低门槛,0经验也能开
  14. window10 win10 查看本机IP
  15. python unpacking_Python在unpacking上的一个小陷阱
  16. Proxifier Socks5 代理(内网访问、远程办公)
  17. 关于利用postman来模拟并发请求
  18. CVPR:将X光图片用于垃圾分割,探索大规模智能垃圾分类
  19. 硬件课程设计—电梯控制系统
  20. 坚持#第108天~生死看淡,不服就干!

热门文章

  1. 计算机技术及其关系,计算机技术和自动化的关系.doc
  2. yii2 advanced rbac 权限管理
  3. 11 《痛苦与狂喜:米开朗基罗传》-豆瓣评分8.9
  4. 常见网络钓鱼攻击类型
  5. 【疑难解决】RTMP视频推流功能组件EasyRTMP-HIK DEMO版本运行报错0xc000007b排查分析
  6. [Unity3D]Node-Canvas入门案例
  7. 如何卸载kb2670838补丁
  8. php+美拍地址+解析,美拍视频的地址解析下载
  9. php如何调用163邮箱发邮件,ThinkPHP3.2利用QQ邮箱/163邮箱通过PHPMailer发送邮件的方法...
  10. 女友没救了~追美国队长还要入手KIMON~