当前市面上有大量的应用市场,这些应用市场作为各个安卓开发者的分发渠道,占据着重要的位置。如果我们需要批量下载apk用于研究,那么就需要用到爬虫技术,这里仅仅介绍一个简单的例子,即爬取应用宝上的apk。爬取apk首先需要找到该apk的展示页面,比如应用宝上的QQ下载页面,http://sj.qq.com/myapp/detail.htm?apkName=com.tencent.mobileqq,可以看出,参数是apkName,那么你只要往里面传apk包名即可拼接出整个链接。page_url = "http://android.myapp.com/myapp/detail.htm?apkName=" + pn

headers = {'User-Agent': "AndroidDownloadManager/4.1.1 (Linux; U; Android 4.1.1; Nexus S Build/JRO03E)"}

resp = requests.get(page_url, headers=headers, timeout=30)

接下来,最关键的就是要解析resp了。python生态圈有很多lib能够解析HTTP请求的相应,这里我使用lxml,该组件的用法,大家可以自行百度。root = etree.HTML(resp.text)

elem = root.xpath("//a[@class='det-down-btn']")

download_url = None if None is elem or len(elem) == 0 else elem[0].attrib["data-apkurl"]

这样,就获得了下载url,类似的我们可以请求该链接,即可获得apk文件。大家使用浏览器手动下载,会发现下载的apk名字里面包含了包名和版本号以及其他信息。我这里也采用类似的策略来命名下载的apk。import urlparse

import os

o = urlparse.urlparse(download_url)

filename = urlparse.parse_qs(o.query, True)['fsname'][0]

if not os.path.exists(filename):

print 'download...', filename

resp = requests.get(download_url, headers=headers, timeout=30)

with open(filename, 'wb') as fp:

fp.write(resp.content)

这样我们就能把apk保存到本地了。

以上就是最简单的apk下载爬虫了。

python安卓手机爬虫_python爬虫实战之爬取安卓apk相关推荐

  1. Python爬虫初探(九)——爬虫之Beautifulsoup4实战(爬取豆瓣信息)

    前面两章咱们介绍了Beautifuisoup4模块的简单使用,今天就用它来爬取豆瓣信息.话不多说,咱们开始吧. 一.拿到url地址 二.获取豆瓣数据 三.保存文件 需求: 爬取标题.评分.详情页的地址 ...

  2. python代码手机壁纸_python爬虫高清壁纸小白实战代码

    本帖最后由 seattle^-^ 于 2020-3-27 19:00 编辑 1.下午做公众号,发现没有图片素材了,于是随便找了一个壁纸网下载一些壁纸. 工具:pycharm2019.1.4 壁纸网址: ...

  3. python爬取电影网站存储于数据库_Python零基础爬虫教程(实战案例爬取电影网站资源链接)...

    前言 好像没法添加链接,文中的链接只能复制到浏览器查看了 这篇是我写在csdn的,那里代码格式支持更好,文章链接 https://blog.csdn.net/d497465762/article/de ...

  4. python爬网站的题库_Python零基础爬虫教程(实战案例爬取电影网站资源链接)

    前言 好像没法添加链接,文中的链接只能复制到浏览器查看了 这篇是我写在csdn的,那里代码格式支持更好,文章链接 https://blog.csdn.net/d497465762/article/de ...

  5. python爬京东联盟_python爬虫框架scrapy实战之爬取京东商城进阶篇

    前言 之前的一篇文章已经讲过怎样获取链接,怎样获得参数了,详情请看python爬取京东商城普通篇,本文将详细介绍利用python爬虫框架scrapy如何爬取京东商城,下面话不多说了,来看看详细的介绍吧 ...

  6. Java爬虫系列之实战:爬取酷狗音乐网 TOP500 的歌曲(附源码)

    在前面分享的两篇随笔中分别介绍了HttpClient和Jsoup以及简单的代码案例: Java爬虫系列二:使用HttpClient抓取页面HTML Java爬虫系列三:使用Jsoup解析HTML 今天 ...

  7. python函数的内涵_python内涵段子文章爬取

    全文简介 使用python中简单的爬虫知识,对内涵段子的文章进行爬取. 需要用到的模块:requests模块和time模块. 需要的程序编辑软件:Pycharm 程序流程 1> 获取URL:进入 ...

  8. python 淘宝搜索_Python使用Selenium+BeautifulSoup爬取淘宝搜索页

    使用Selenium驱动chrome页面,获得淘宝信息并用BeautifulSoup分析得到结果. 使用Selenium时注意页面的加载判断,以及加载超时的异常处理. import json impo ...

  9. python 异步加载_Python学习笔记4——爬取异步加载数据

    一.什么是异步加载? 在之前的学习笔记中,爬取的网页是需要手动翻页的网址,但是一些网站是通过自动加载翻页的,如knewone网页.浏览knewone的官网就能发现,当下拉到网页最下端时,网站会自动加载 ...

最新文章

  1. MySQL installer
  2. 物理化学 化学 动力学(上)
  3. 学了Python就能上手业务?你还差得远!
  4. 案例讲清如何构建“What-if分析”,教你轻松玩转动态参数
  5. .NET Core HttpClient请求异常思考
  6. 神经网络的SGD、Momentum、AdaGrad、Adam最优化方法及其python实现
  7. String的常用方法(java)
  8. virtualbox macos_MacOS 终于可以完美使用 Podman 了!
  9. C语言 VS快速输入main函数
  10. sqlserver 中的 substring函数(转)
  11. linux谷歌浏览器无法登陆,新版CentOS 7.1上的谷歌浏览器无法启动
  12. 通达信标记符号_通达信在股票名称后自动标记
  13. flash 图片有描边 html,Flash遮罩制作线条逐渐显示的汽车轮廓动画效果
  14. C盘扩大 解决办法
  15. hiberfil.sys彻底删除,释放C盘空间。
  16. 7-5 走楼梯升级版(PTA程序设计)
  17. 关于AudioManager在项目中遇到的一些问题的记录
  18. android语音动画,Android逐帧动画的简单使用-语音播放效果的实现
  19. Html笔记——实现一组图片循环且首尾相连的滚动效果
  20. 小程序登录、支付、上传图片流程

热门文章

  1. 火爆的背后,高通量测序面临5大挑战 | 深度
  2. vba如何变vbk—— 微软Word中的ahk应用
  3. 吴江中专计算机网络技术分数线,2018中考分数线|吴江、昆山、太仓中考录取分数线出炉!截止到目前这些学校分数线已公布!...
  4. UBUTNU 18.04下的USRP N310连接
  5. qt opencv mingw转msvc
  6. Cannot deserialize value of type `java.util.ArrayList<com.trunk.common.core.po.xxx>` fr
  7. 【题库】上海市学校心理咨询师-普通心理学-考点解析 11.2 智力理论
  8. HTC G7 相机故障,自己动手维修详细步骤
  9. 小程序包体积压缩优化,下降500k起步
  10. 特斯拉完全自动驾驶涉嫌误导性宣传,媒体批评马斯克:怕不是个PUA大师?