20行Python代码爬取下载应用宝所有APP软件
时间:2022-07-28
本文章向大家介绍20行Python代码爬取下载应用宝所有APP软件,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
基本环境配置
- python 3.6
- pycharm
- requests
- parsel
打开开发者工具分析网页
你怎么知道这个就是下载地址呢?
1、选择一个应用的下载地址 2、打开开发者工具,清空数据,选择Network 3、点击立即下载 4、就会发现下载地址
把链接地址复制,在网页源代码中搜索,查看是否网页是否有返回该数据
-
有数据:
就可以直接请求网页获取地址; -
没有数据:
那就要在开发这工具里面找是否有接口数据,然后一步一步在进行分析;
实现效果
完整代码
import requests
import parsel
def download(url, title):
path = 'D:\python\demo\应用宝手机APP软件\APP软件\' + title + '.apk'
response = requests.get(url=url, headers=headers)
with open(path, mode='wb') as f:
f.write(response.content)
for page in range(100, 123):
url = 'https://sj.qq.com/myapp/category.htm?orgame=1&categoryId={}'.format(page)
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36'
}
response = requests.get(url=url, headers=headers)
selector = parsel.Selector(response.text)
lis = selector.css('.main ul li')
for li in lis:
title = li.css('.app-info-desc a:nth-child(1)::text').get()
apk_url = li.css('.app-info-desc a:nth-child(4)::attr(ex_url)').get()
print(title, apk_url)
download(apk_url, title)
- 微软开源全新的文档生成工具DocFX
- 使用 MimeKit 和 MailKit 发送邮件
- 使用 React Native 重写大型 Ionic 应用后,我们想分享一下这八个经验
- 基于OWin的Web服务器Katana发布版本3
- 【工具推荐】图像界的魔术师 ImageMagick
- 使用Metrics.NET 构建 ASP.NET MVC 应用程序的性能指标
- 如何设计完善的构建系统,为日常开发提速一倍
- 两年 100 期技术周报后,我收获了这四点
- 如何为技术博客设计一个推荐系统(中):基于 Google 搜索的半自动推荐
- 我是如何为技术博客设计一个推荐系统(上):统计与评分加权
- c#处理空白字符
- 后台优化:使用应用性能管理工具
- Disruptor-NET和内存栅栏
- 我们是如何将 Cordova 应用嵌入到 React Native 中
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法