python 提取数据部分信息并技术

img


这是我爬来的一段数据,如何提取出所有的省份名称及其出现次数啊。(因为爬的时候没有规范格式导致找不着显著规律去定位o(╥﹏╥)o)
附上数据
王唯漪 1995.06.20 175 286 270 自由人 上海东浩兰生
惠若琪 1991.03.04 192 315 305 主攻 江苏中天钢铁
*陈展 1990.10.11 180 300 295 自由人 江苏中天钢铁
张常宁 1995.11.06 195 325 320 接应 江苏中天钢铁
单丹娜 1991.10.08 168 290 285 自由人 浙江嘉善农商银行
王娜 1990.02.25 178 305 295 二传 浙江嘉善农商银行
徐云丽 1987.08.02 195 325 306 副攻 福建阳光城
郑益昕 1995.05.06 187 305 300 副攻 福建阳光城
林莉 1992.07.05 171 294 294 自由人 福建阳光城
杨方旭 1994.10.06 190 308 300 接应 山东莱商银行
王梦洁 1995.11.14 172 280 270 自由人 山东莱商银行
朱婷 1994.11.29 195 327 300 主攻 河南鑫苑
*张晓雅 1992.10.04 188 310 300 副攻 四川五粮液

你只能自己建立一个省集合了

如果你的 item 每个都有省份还好,怕的是,没有省份的,信息,比如海口xxx,石家庄xxx之类的,那样你就得弄个完整的行政区字典了

data = [
    {'name': '王唯漪', 'birthday': '1995.06.20', 'height': 175, 'attack': 286, 'block': 270, 'position': '自由人', 'team': '上海东浩兰生'},
    {'name': '惠若琪', 'birthday': '1991.03.04', 'height': 192, 'attack': 315, 'block': 305, 'position': '主攻', 'team': '江苏中天钢铁'},
    {'name': '陈展', 'birthday': '1990.10.11', 'height': 180, 'attack': 300, 'block': 295, 'position': '自由人', 'team': '江苏中天钢铁'},
    {'name': '张常宁', 'birthday': '1995.11.06', 'height': 195, 'attack': 325, 'block': 320, 'position': '接应', 'team': '江苏中天钢铁'},
    {'name': '单丹娜', 'birthday': '1991.10.08', 'height': 168, 'attack': 290, 'block': 285, 'position': '自由人', 'team': '浙江嘉善农商银行'},
    {'name': '王娜', 'birthday': '1990.02.25', 'height': 178, 'attack': 305, 'block': 295, 'position': '二传', 'team': '浙江嘉善农商银行'},
    {'name': '徐云丽', 'birthday': '1987.08.02', 'height': 195, 'attack': 325, 'block': 306, 'position': '副攻', 'team': '福建阳光城'},
    {'name': '郑益昕', 'birthday': '1995.05.06', 'height': 187, 'attack': 305, 'block': 300, 'position': '副攻', 'team': '福建阳光城'},
    {'name': '林莉', 'birthday': '1992.07.05', 'height': 171, 'attack': 294, 'block': 294, 'position': '自由人', 'team': '福建阳光城'},
    {'name': '杨方旭', 'birthday': '1994.10.06', 'height': 190, 'attack': 308, 'block': 300, 'position': '接应', 'team': '山东莱商银行'},
    {'name': '王梦洁', 'birthday': '1995.11.14', 'height': 172, 'attack': 280, 'block': 270, 'position': '自由人', 'team': '山东莱商银行'},
    {'name': '朱婷', 'birthday': '1994.11.29', 'height': 195, 'attack': 327, 'block': 300, 'position': '主攻', 'team': '河南鑫苑'},
    {'name': '张晓雅', 'birthday': '1992.10.04', 'height': 188, 'attack': 310, 'block': 300, 'position': '副攻', 'team': '四川五粮液'},
]

provinces = {}
for player in data:
    team = player['team']
    if '省' in team:
        province = team.split('省')[0]
        if province not in provinces:
            provinces[province] = 1
        else:
            provinces[province] += 1

for province, count in provinces.items():
    print(province, count)