城市名接龙爬取全国城市各医院基本信息(名字、地址、联系电话、医院等级、重点科室、经营方式等)

整个程序分两部分:实现城市名接龙(兼容谐音)和爬取城市医院信息。

城市接龙部分:

城市接龙需要兼容谐音,那么就必须用到xpinyin模块中的Pinyin类方法,负责将中文转换为拼音;而城市接龙的实现便是通过将初次输入的城市名的最后一个字的拼音跟所有已转换成拼音的城市名头一个字做对比,拼音相等(谐音)即是我们要的接龙城市,代码实现部分如下:

#自动寻找下一个接龙城市
def get_NextCiyt(c , total_CityPinyin_list , city_list , city_list_copy):
    city_list_copy.remove(c) #以防重复下载
    if not city_list_copy:  #下载完所有城市后,返回None停止请求
        return None
    in_py_list = p.get_pinyin(c , ' ').split(' ')
    total_city_len = len(total_CityPinyin_list)
    next_city = None
    #寻找接龙城市
    for i in range(total_city_len):
        if in_py_list[1] == total_CityPinyin_list[i][0]:
            if total_city_len == len(city_list):
                next_city = city_list[i]
                break
    if next_city:
        return next_city
    else:
        #当无法接龙时,随机选一城市
        print('not found city')
     
  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值