python列表创建城市_Python-数据解析-获取城市列表!

本文介绍了如何使用Python访问URL获取JSON数据,通过JSONPath提取所有城市名称并将其保存到本地JSON文件中。首先,访问拉勾网的城市列表API,然后利用json库解析JSON数据,使用JSONPath提取'名字'字段,最后将城市列表写入city.json文件。
摘要由CSDN通过智能技术生成

使用 JSONPath 将所有的城市名称提取出来,并保存在一个文件中。

{ “state”: 1, “message”: “success”, “content”: { “rows”: [], “data”: { “allCitySearchLabels”: { “A”: [ { “id”: 601, “name”: “鞍山”, “parentId”: 535, “code”: “081600000”, “isSelected”: false }, { “id”: 105795, “name”: “澳门特别行政区”, “parentId”: 562, “code”: “330100000”, “isSelected”: false } ] } } }}

① 访问 URL

创建一个文件,取名为 jsonLagou.py。然后,引用 urllib.request 模块,访问拉勾网的 URL,获取网页内容。

jsonLagou.pyimport urllib.requestimport jsonpathimport json

url = “http://www.lagou.com/lbs/getAllCitySearchLabels.json“headers = {“User-Agent”: “Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36”}

request = urllib.request.Request(url, headers=headers)response = urllib.request.urlopen(request)html = response.read()print(html)

此时获得的 html 内容就是一个 JSON 格式的字符串。

② 读取城市名称列表

将字符串格式的 JSON 转换为 Python 对象,并使用 JSONPath 获取所有 name 节点的值,形成列表。

把 JSON 格式字符串转换成 Python 对象jsonobj = json.loads(html)# 从根节点开始,匹配 name 节点city_list = jsonpath.jsonpath(jsonobj, “$..name”)print(city_list)

此时 city_list 变量中存储的就是所有的城市列表。

③ 将城市列表保存到本地

使用 json.dumps() 方法将列表转化为 JSON 格式的字符串,再将字符串写入本地文件。

打开或创建一个名为 city.json 的文件file = open(“city.json”, w)

将列表序列化为 JSON 格式的字符串content = json.dumps(city_list, ensure_ascii=False)print(content)

将 JSON 格式的字符串写入本地文件file.write(content)file.close()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值