Python 学习之urllib模块---用于发送网络请求,获取数据(3)

时间:2022-04-06 16:09:12

上节内容,是得到了省/直辖市编码,如web='http://m.weather.com.cn/data5/city01',我们需要继续获取此接口的数据,于是进行下面的操作

for  i  in   b:                #i=b[0],b[1],b[2]。。。。。。

code=i.split('|')[0]

web='http://m.weather.com.cn/data5/city%s'

web1=web %code

content2=urllib.request.urlopen(web1).read().decode()     #这里可以得到一大串字符串,如获取省/直辖市编码一样,需要进行分割,得到list列表进行操作

b2=content2.split(',')  #以逗号分割切片,分割后的每一段都是一个新的字符串,最终返回这些字符串组成一个list
         #print(b2)   其实获取操作也是和上述操作一样,所以直接将代码贴上来。
     for j in b2:
        s_code2=j.split('|')[0]
        web2=web%s_code2
        content3=urllib.request.urlopen(web3).read().decode()
        b3=content3.split(',')
        for x in b3:
           s_code3=x.split('|')[0]          #获取三级编码
           #print(s_code3,end=' ')
           name=x.split('|')[1]        #获取城市名称
           web4=web%s_code3
           content4=urllib.request.urlopen(web4).read().decode()
           f=content4.split('|')[1]      #获取最终编码
           #print(f)
           line="'%s':'%s',\n" %(name,f)

#print (line)

可以打印出来看看哦!