189 8069 5689

如何用python获取gearbest地址库

今天小编给大家分享一下如何用python获取gearbest地址库的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

目前成都创新互联公司已为近千家的企业提供了网站建设、域名、雅安服务器托管、网站托管、服务器托管、企业网站设计、湖南网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。

import requests
import json

# 用来去掉多余的字符,并格式化
def geshihua(str):
    s = None
    if "/**/_get_country(" in str:
        m = str.index('/**/_get_country(')+17
        s = str[m:-2]
    elif '/**/_user_get_province' in str:
        m = str.index('/**/_user_get_province') + 23
        s = str[m:-2]
    elif '/**/_user_get_city' in str:
        m = str.index('/**/_user_get_city') + 19
        s = str[m:-2]
    s = json.loads(s)
    s = s['data']
    return s

def country():
    requests.packages.urllib3.disable_warnings()
    user_agent="Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36"
    headers = {'User-Agent': user_agent}
    url = "https://www.gearbest.com/get-country?callback=_get_country"
    response = requests.get(url,headers)
    countrys = response.content.decode()
    countrys = geshihua(countrys)
    return countrys

def province(countryCode):
    requests.packages.urllib3.disable_warnings()
    user_agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36"
    headers = {'User-Agent': user_agent}
    url = "https://www.gearbest.com/user/get-province?callback=_user_get_province&countryCode=" + countryCode
    response = requests.get(url, headers)
    provinces = response.content.decode()
    provinces = geshihua(provinces)
    return provinces

def city(provinceCode):
    requests.packages.urllib3.disable_warnings()
    user_agent = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/73.0.3683.86 Safari/537.36"
    headers = {'User-Agent': user_agent}
    url = "https://user.gearbest.com/user/get-city?callback=_user_get_city&provinceCode=" + str(provinceCode)
    response = requests.get(url, headers)
    citys = response.content.decode()
    citys = geshihua(citys)
    return citys


def main():
    f = open('address.txt', 'a')

    countrys = country()
    for c in countrys:
        countryName = c['countryName']
        # print(countryName)
        provinces = province(c['countryCode'])
        for p in provinces:
            provinceName = p['provinceName']
            # print(p['provinceCode'])
            citys = city(p['cdpId'])
            # print(citys)
            if len(citys) != 0 :
                for t in citys:
                    cityName = t['cityName']
                    f.write(countryName + ',' + provinceName + ',' + cityName + '\n')
                    print(countryName + ',' + provinceName + ',' + cityName)
            else:
                f.write(countryName + ',' + provinceName + ',None' + '\n')
                print(countryName + ',' + provinceName + ',None')
    f.close()

    
if __name__=="__main__":
    main()

以上就是“如何用python获取gearbest地址库”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注创新互联行业资讯频道。


本文标题:如何用python获取gearbest地址库
文章起源:http://jkwzsj.com/article/ppcsdd.html

其他资讯