二、爬虫-爬取肯德基在北京的店铺地址

1、算法框架解释

    针对这个案例,现在对爬虫的基础使用做总结如下:
    1、算法框架
    (1)设定传入参数
        ~url:
            当前整个页面的url:当前页面的网址
            当前页面某个局部的url:打开检查
        ~data:需要爬取数据的关键字,即搜索内容
        ~param:需要获取哪些(类型)的数据,即数据类型
        ~headers:UA伪装
    (2)得到get/post请求响应
        根据”检查“结果进行判断:
            get请求:response=requests.get(url=**,data=**,param=**,headers=**)
            post请求:response=requests.post(url=**,data=**,param=**,headers=**)
    (3)将得到的请求响应json化数据
        此处以request.get/post请求数据为dict为例:
        dict_obj=response.json()    #在这里,你得到的其实是一个python对象,也就是python的字典
    (4)持久化存储
        ~得到存储地址和修改权限
            fp=open("目录",'w',encoding="UTF-8)
        ~将python对象编码成Json字符串>>格式转化>>python(dict)——>json
            json.dump(返回的json数据>>dict_obj,fp=存储地址>>fp,ensure_ascii=False)
        ~结束

2、代码解析 

import requests
import json

"""

"""
if __name__ == "__main__":
    print("开始爬取")
    # (1)
    post_url = 'https://www.kfc.com.cn/kfccda/ashx/GetStoreList.ashx?op=keyword'
    post_data = {
        'kw': '上海'
    }
    post_param = {
        "cname": "",
        "pid": "",
        "keyword": "上海",
        "pageIndex": "1",
        "pageSize": "10"
    }
    post_header = {
        "User-Agent": "Mozilla/5.0 (Linux; Android 6.0; Nexus 5 Build/MRA58N) AppleWebKit/537.36 (KHTML, like Gecko) "
                      "Chrome/119.0.0.0 Mobile Safari/537.36"
    }
    # (2)
    response = requests.post(url=post_url, data=post_data, params=post_param, headers=post_header)
    # (3)
    dict_obj = response.json()
    # print(type(dict_obj))
    # (4)
    fp = open('./html/KenDeJi.json', 'w', encoding='UTF-8')
    json.dump(dict_obj, fp=fp, ensure_ascii=False)
    print("over")

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

弦之森

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值