- json简单说就是javascript中的对象和数组,所以这两种结构就是对象和数组两种结构,通过这两种结构可以表示各种复杂的结构
- JsonPath 是一种信息抽取类库,是从JSON文档中抽取指定信息的工具,提供多种语言实现版本,包括:Javascript, Python, PHP 和 Java
- JsonPath 对于 JSON 来说,相当于 XPATH 对于 XML
# -*- coding:utf-8 -*-
import json
import jsonpath
import urllib2
class Json():
def __init__(self):
self.url = "http://www.lagou.com/lbs/getAllCitySearchLabels.json"
def get_json(self):
headers = {'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:56.0)'}
request = urllib2.Request(self.url,headers=headers)
response = urllib2.urlopen(request)
html = response.read()
jsonobj = json.loads(html)
# 获取城市名称
namelist = jsonpath.jsonpath(jsonobj,'$..name')
for name in namelist:
print(name)
# 把列表存储为字符串
nametext = json.dumps(namelist,ensure_ascii=False)
with open('name.txt','a') as file:
file.write(nametext.encode("utf-8"))
file.close
if __name__ == "__main__":
jsono = Json()
jsono.get_json()