• 现在陪玩多吗,用Python来看看他们的行情


    前言

    陪玩这个行业应该没哪个好兄弟没听说过吧

    有男有女,还有很多漂亮的妹妹

    就是说,今天来带你们爬爬陪玩的数据

    一起看看行情咋样

    请添加图片描述

    一 、数据来源分析:

    • 确定需求, 采集那个网站上面什么数据
    • 抓包分析, 通过开发者工具进行抓包分析

    二、代码实现步骤过程:

    • 发送请求, 对于刚刚分析得到url地址发送请求
    • 获取数据, 获取服务器返回响应数据
    • 解析数据, 提取我们想要数据内容,音频试音,陪玩照片, 基本陪玩数据
    • 保存数据, 保存本地文件夹

    开发环境

    • python 3.8
    • pycharm

    模块使用

    • import os: 文件操作
    • import re: 正则
    • import requests: 数据请求
    • import json:json数据转换
    • import csv: 保存csv数据

    代码实现

    请求数据

    源码.资料.点击领取即可

    对于分析得到url地址发送请求
    headers是否添加, 看网站, 网站没什么反爬的话, 可以不用加

    url = 'https://***.com/api'
    # 请求参数
    data = {
        'act': 'userList',
        'page': page,
        'type': '1',
        'sex': '2',
        'voice': '1',
        'order': '1',
    }
    # 发送请求
    response = requests.post(url=url, data=data)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    解析数据

    提取我们想要数据内容, 音频试音, 陪玩照片, 基本陪玩数据 键值对取值:返回数据字典数据类型, 字典取值根据冒号左边的内容[键],提取冒号右边的内容[值]

    for index in response.json()['data']['rows']:
        # 基本数据获取 --> 保存表格里面
        dit = {
            '昵称': index['nickname'],
            '价格': index['price'],
            '热度': index['exp'],
            # replace() 字符串替换的方法 replace('替换之前的内容', '替换之后的内容')
            '简介': index['summary'].replace('\n', ''),
            # f'{}' 字符串格式化方法 format
            '详情页': f'https://www.peiwantv.com/user/{index["uid"]}',
        }
        audio_url = 'https://static.peiwan.tv/' + json.loads(index['voice'])['url']
        img_url = f'https://www.peiwantv.com/user/avatar/{index["uid"]}?image…ew2/1/interlace/1/ignore-error/1/w/100/format/jpg'
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    在这里插入图片描述

    保存数据

    陪玩详情数据

    import os.path
    c = open('data.csv', mode='a', encoding='utf-8-sig', newline='')
    # c 文件对象 fieldnames 字段名
    csv_writer = csv.DictWriter(c, fieldnames=[
        '昵称',
        '价格',
        '热度',
        '简介',
        '详情页',
    ])
    # 写入表头
    csv_writer.writeheader()
    # 保存表格数据
    csv_writer.writerow(dit)
    print(dit)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    保存试音音频、图片数据

    python学习交流Q群:309488165 ### 源码领取
    img_content = requests.get(url=img_url).content  # 图片二进制数据
    audio_content = requests.get(url=audio_url).content  # 音频二进制数据
    title = index["nickname"]
    # 自动创建文件夹 data\\憨憨\\
    file = f'data\\{title}\\'
    # 判断如果没有文件夹
    if not os.path.exists(file):
        # 自动创建文件夹
        os.makedirs(file)
    with open(file + title + '.jpg', mode='wb') as img:
        img.write(img_content)
    with open(file + title + '.mp3', mode='wb') as audio:
        audio.write(audio_content)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    请添加图片描述

    请添加图片描述

    请添加图片描述

    今天的分享到这里就结束了

    对文章有问题的,或者有其他关于python的问题,可以在评论区留言或者私信我哦
    觉得我分享的文章不错的话,可以关注一下我,或者给文章点赞(/≧▽≦)/

    请添加图片描述

  • 相关阅读:
    从0开始学Java:运算符(Operator)与标点符号(Separators)
    Win10升级Win11必备的5款免费软件
    Golang的测试、基准测试和持续集成
    五款可替代163邮箱的电子邮件服务
    fmp4打包H265视频流
    【Python+selenium】如何高效地将driver定位到当前窗口
    java开发之个人微信助手的开发
    通过 Python 脚本支持 OC 代码重构实践(一):模块调用关系分析
    图解超经典的KNN算法
    ES6之Symbol.hasInstance
  • 原文地址:https://blog.csdn.net/yxczsz/article/details/127677990