Python采集烤肉店数据,又是一个外包项目,努力挣钱,实现吃肉自由

前言

哈喽啊,铁子们,现在好饿好想吃肉啊,实在有点受不了了,刚刚就看了某软件上的烤肉店,越看越饿,但是又不知道吃哪家好,索性就用Python采集一下这些烤肉店的数据吧

请添加图片描述

准备环境

  • python 3.6
  • pycharm
  • requests >>> 发送请求 pip install requests
  • csv >>>保存数据

了解爬虫最基本的思路

一. 数据来源分析

  1. 确定我们爬取的内容是什么?
    爬取店铺数据
  2. 去找这些东西是从哪里来的
    通过开发者工具进行抓包分析, 分析数据来源

二. 代码实现过程

发送请求, 对于找到数据包发送请求
获取数据, 根据服务器给你返回的response数据来的
解析数据, 提取我们想要的内容数据
保存数据, 保存到csv文件
多页爬取, 根据url地址参数变化

请添加图片描述

代码实现过程

1.发送请求

源码点击领取即可

url = 'mou团'
data = {
    'uuid': '6e481fe03995425389b9.1630752137.1.0.0',
    'userid': '266252179',
    'limit': '32',
    'offset': 32,
    'cateId': '-1',
    'q': '烤肉',
    '平台原因不能打出',
}
# 请求头 都是可以从开发者工具里面直接复制粘贴
# ser-Agent: 浏览器的基本信息
headers = {
    'Referer': '某tuan',
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4577.63 Safari/537.36'
}
# 发送请求
response = requests.get(url=url, params=data, headers=headers)

200 表示请求成功 状态码 403 你没有访问权限

2.获取数据

print(response.json())

3.解析数据

python学习交流Q群:770699889 ###
result = response.json()['data']['searchResult']
# [] 列表 把里面每个元素都提取出来 for循环遍历
for index in result:
    # pprint.pprint(index)
    # f'{}' 字符串格式化
    index_url = f'某tuan'
    # ctrl + D
    dit = {
        '店铺名称': index['title'],
        '店铺评分': index['avgscore'],
        '评论数量': index['comments'],
        '人均消费': index['avgprice'],
        '所在商圈': index['areaname'],
        '店铺类型': index['backCateName'],
        '详情页': index_url,
    }
    csv_writer.writerow(dit)
    print(dit)

4.解析数据

f = open('烤肉数据.csv', mode='a', encoding='utf-8', newline='')
csv_writer = csv.DictWriter(f, fieldnames=[
    '店铺名称',
    '店铺评分',
    '评论数量',
    '人均消费',
    '所在商圈',
    '店铺类型',
    '详情页',
])
csv_writer.writeheader() # 写入表头

5.翻页

python学习交流Q群:770699889 ###
for page in range(0, 1025, 32):
    url = '某tuan'
    data = {
        'uuid': '6e481fe03995425389b9.1630752137.1.0.0',
        'userid': '266252179',
        'limit': '32',
        'offset': page,
        'cateId': '-1',
        'q': '烤肉',
        '平台原因不能打出',
    }

运行代码得到数据

在这里插入图片描述

在这里插入图片描述

完整代码

在这里插入图片描述

ok,今天的文章分享到这里就结束了

对文章有问题的可以留言或者私信

记得给文章点赞收藏哦

请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值