建设公司网站,网络技术培训,建筑网建设通网站作用,5ucms怎样做网站自适应XPath  JSONPath  描述  /  $  根节点  .    当前节点  /  .or[]  取子节点  ..  n/a  取父节点,Jsonpath未支持  //  ..  就是不管位置,选择所有符合条件的条件  *  *  匹配所有元素节点    n/a  根据属性访问,Json不支持,因为Js…
 
| XPath | JSONPath | 描述 | 
| / | $ | 根节点 | 
| . | @ | 当前节点 | 
| / | .or[] | 取子节点 | 
| .. | n/a | 取父节点,Jsonpath未支持 | 
| // | .. | 就是不管位置,选择所有符合条件的条件 | 
| * | * | 匹配所有元素节点 | 
| @ | n/a | 根据属性访问,Json不支持,因为Json是个Key-value递归结构,不需要。 | 
| [] | [] | 迭代器标示(可以在里边做简单的迭代操作,如数组下标,根据内容选值等) | 
| | | [,] | 支持迭代器中做多选。 | 
| [] | ?() | 支持过滤操作. | 
| n/a | () | 支持表达式计算 | 
| () | n/a | 分组,JsonPath不支持 | 
import json
import jsonpath
import  requestsurl = 'http://www.lagou.com/lbs/getAllCitySearchLabels.json'
html = requests.get(url)
js = json.loads(html.text)
print(js)# A 下面的节点
jp = jsonpath.jsonpath(js,'$..A.*')
print(jp)# A 下面节点的name
jp = jsonpath.jsonpath(js,'$..A.*.name')
print(jp)# C 下面节点的name
jp = jsonpath.jsonpath(js,'$..C..name')
print(jp)# C 下面节点的第二个
jp = jsonpath.jsonpath(js,'$..C[1]')
print(jp)# C 下面节点的第二个的name
jp = jsonpath.jsonpath(js,'$..C[1].name')
print(jp)# C 下面节点的2到5的name
jp = jsonpath.jsonpath(js,'$..C[1:5].name')
print(jp)# C 下面节点最后一个的name
jp = jsonpath.jsonpath(js,'$..C[(@.length-1)].name')
print(jp)
