荣耀体验门店

# import json
# import requests
# #url="https://openapi.vmall.com/mcp/offlineshop/getShopList"     #https://m.vmall.com/help/hnrstoreaddr.htm
# url="https://openapi.vmall.com/mcp/offlineshop/getShopList"
#
# heardes={"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/81.0.4044.138 Safari/537.36"
#          }
# data={
#     "portal":'2',
#     "lang":"zh-CN",
#     "country":"CN",
#     "brand":'1',
#     "province":"广东省",
#     "city":"深圳市",
#     "pageNo":'1',
#     "pageSize":'20'
# }
# # - 注意:请求参数为字典格式并非常规的键值对,所以在代码实现中需要使用dumps将字典转成json 串作为请求参数
#
# respons=requests.post(url=url,data=json.dumps(data)).text
# #print(respons)
# #print(type(respons))
#
# # _id=[]
# temp=[]
# # #此处需要转换成字典
# for dic in json.loads(respons)['shopInfos']:   # 是个json数据,所以要json.loads(),才能把json格式转为python识别的格式
#     _id=dic['id']
#     #print(_id)
#     temp.append(_id)
#
#
# #     # 拼接详情页的url
#     for page in range((len(temp))):
#         detail_url = 'https://openapi.vmall.com/mcp/offlineshop/getShopById?portal=2&version=10&country=CN&shopId={}&lang=zh-CN'.format(_id)
#         #print(detail_url)
#         print(detail_url)
#         params = {
#             'portal': '2',
#             'version': '10',
#             'country': 'CN',
#             'shopId': str(page),
#             'lang': 'zh - CN'
#         }
#         respons_url=requests.get(url=detail_url,params=params).text
#         print(respons_url)
#         # for q in json.loads(respons_url)['shopInfo']:
#         #     name=q["brand"]
#         #     print(name)
# #         #for q in json.loads(respons_url)['shopInfo']:
# #         #print(respons_url)
# #         #print(respons_url)
# #             #print(q.get('address'))
#

""""结尾仍然没有计算出来,错误在44行"""
import requests
import json
url = 'https://openapi.vmall.com/mcp/offlineshop/getShopList'
data={
    "portal":'2',
    "lang":"zh-CN",
    "country":"CN",
    "brand":'1',
    "province":"广东省",
    "city":"深圳市",
    "pageNo":'1',
    "pageSize":'20'
}
#从中解析出id
json_data = requests.post(url,data=json.dumps(data)).json()
print(json_data)
print("========================")
for dic in json_data['shopInfos']:
    _id = dic['id']
    #拼接详情页的url
    detail_url = 'https://openapi.vmall.com/mcp/offlineshop/getShopById?portal=2&version=10&country=CN&shopId={}&lang=zh-CN'.format(_id)
    finally_data = requests.get(url=detail_url).json()
    print(finally_data)#每一页详情页url的数据

如下两种方法找被列表包裹的字典值

方法一:
s={'words_result': [{'words': '在别人眼里我就像一个怪物'}, {'words': "But in others' eyes, I'm like a monster."}],
   'log_id': 1384035241005416448, 'words_result_num': 2}
aa=(s['words_result'])
for i in s['words_result']:
    print(i['words'])
    
方法二  
s={'words_result': [{'words': '在别人眼里我就像一个怪物'}, {'words': "But in others' eyes, I'm like a monster."}],
   'log_id': 1384035241005416448, 'words_result_num': 2}
print(s['words_result'][0]['words'],s['words_result'][1]['words'])    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值