Python爬虫实战:应用宝APP数据信息采集

Posted 白云吃辣条

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python爬虫实战:应用宝APP数据信息采集相关的知识,希望对你有一定的参考价值。

 

工具准备

数据来源: 应用宝
开发环境:win10、python3.7
开发工具:pycharm、Chrome

项目思路解析

明确需要采集的数据:

  • app的下载地址
  • app的下载次数
  • app的名字
  • app的开发公司

提取到页面的分类标签
获取到a标签的href属性
用于之后拼接动态地址

找到动态加载的app数据加载地址

url的值是每个分类标签的值
https://sj.qq.com/myapp/cate/appList.htm?orgame=1&categoryId=-10&pageSize=20&pageContext=undefined
拼接新的url值发送请求

简易源码分析

import requests  # 工具包发送网络请求
from lxml import etree   # 转换成对象
import csv    # 处理表格数据
url = "https://sj.qq.com/myapp/category.htm?orgame=1"
response = requests.get(url)
html_data = etree.HTML(response.text)
li_list = html_data.xpath(\'//ul[@data-modname="cates"][position()>1]/a/@href\')
del(li_list[-1])
for url1 in li_list:
    for i in range(10):
        new_url = "https://sj.qq.com/myapp/cate/appList.htm" + url1 + "&pageSize=20&pageContext={}".format(i*20)
        res = requests.get(new_url).json()
        if res["count"] == 0:
            break
        with open("应用宝.csv", "a", newline="", encoding="utf-8")as f:
            csv_data = csv.DictWriter(f, fieldnames=["appName", \'authorName\', "apkUrl"])
            for info in res["obj"]:
                appName = info[\'appName\'] 
                authorName = info[\'authorName\']
                apkUrl = info[\'apkUrl\']
                print({"appName": appName, "authorName": authorName, "apkUrl": apkUrl})
                csv_data.writerow({"appName": appName, "authorName": authorName, "apkUrl": apkUrl})


 

以上是关于Python爬虫实战:应用宝APP数据信息采集的主要内容,如果未能解决你的问题,请参考以下文章

Python爬虫实战:应用宝APP数据信息采集

图片获取太麻烦?python爬虫实战:百度百万级图片采集

电子课本分析,基于参数跳转逻辑的实现,Python爬虫实战分析

投递简历总是石沉大海?HR表现的机会都不给你?Python爬虫实战:简历模板采集

投递简历总是石沉大海?HR表现的机会都不给你?Python爬虫实战:简历模板采集

爬虫实战 51job移动端数据采集