欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

用?Python?繪制全國鴻星爾克門店分布圖

 更新時間:2022年01月26日 09:54:05   作者:?Python學習與數(shù)據(jù)挖掘?  
這篇文章主要介紹了用?Python?繪制全國鴻星爾克門店分布圖,今天就以某度地圖?用Python爬蟲看一下全國到底有多少家鴻星爾克門店,,需要的朋友可以參考一下

1、需求分析

首先我們打開地圖搜索“鴻星爾克”:

復制該鏈接到瀏覽器,發(fā)現(xiàn)這是一個json格式的數(shù)據(jù)集。我們所需要的省份和對應數(shù)量還有各個城市對應的數(shù)量都在其中。

2、發(fā)送請求

我們首先模擬瀏覽器來發(fā)送請求獲取到這個json數(shù)據(jù)集,然后獲取各個城市鴻星爾克門店及其對應數(shù)量 。

url = 'https://map.baidu.com/?newmap=1&reqflag=pcmap&biz=1&from=webmap&da_par=baidu&pcevaname=pc4.1&qt=s&da_src=searchBox.button&wd=%E9%B8%BF%E6%98%9F%E5%B0%94%E5%85%8B&c=1&src=0&wd2=&pn=0&sug=0&l=5&b=(7854419.220000001,831323.8799999999;15358291.22,8507227.879999999)&from=webmap&biz_forward={%22scaler%22:1,%22styles%22:%22pl%22}&sug_forward=&auth=yER4N%40Rwcw0cBSVCeS%3DdQBAfLdF6agFfuxLzNBVHVHRtxZhQxjh%40wWvvYgP1PcGCgYvjPuVtvYgPMGvgWv%40uVtvYgPPxRYuVtvYgP%40vYZcvWPCuVtvYgP%40ZPcPPuVtvYgPhPPyheuVtcvY1SGpuRtDpnSCE%40%40By1uVtCGYuVt1GgvPUDZYOYIZuVt1cv3uVtGccZcuVtPWv3GuBtR9KxXwPYIUvhgMZSguxzBEHLNRTVtcEWe1GD8zv7u%40ZPuVtc3CuVteuEthjzgjyBODQEYHUHBxfiKKvMuxcc%40AJ&seckey=cde6ebb241c3d75c675c8688828640edba33c570fc006f6ccdee864f2e95d88033fc19e794fee19c2417a6953ba260f3e91efa7e82cbc9c45b5854aec79ce924b08cce22526301f3a8c80710ebb635e73f5eccb560ee1dc38add2dfc793843279646449563fa4547850c144c3838de6fb1efaab7253aa6e99c1de56b4ddbad3905f480e4d46e5414c519465f08bedee98acac8fc7d2f84f413b041287538b09a811ee347b66a4c2c948f2ffa2f6e7674e0c5cb2b6407b610181af9064f870280fd7053482a91caa7cb762068ea41c4bb7bd2f7899f81a2ba5ab3fde28503a6fdc54b0fdee52cc2d02da76e1a4f1b4745&device_ratio=1&tn=B_NORMAL_MAP&nn=0&ie=utf-8&t=1627305062813'

? ? headers = {
? ? ? ? 'Cookie': 'BIDUPSID=5FDDBE7E96E9CA6D71998093E123403A; PSTM=1627225875; BAIDUID=F934E08738623DF508F108DEF391CFB9:FG=1; BDORZ=B490B5EBF6F3CD402E515D22BCDA1598; BCLID_BFESS=8512773460870798959; BDSFRCVID_BFESS=5UPOJeC62l07libepqHRKmSPxe5rbsOTH6aoyt6boQjiS8lguPwkEG0PHf8g0Ku-S2EqogKKy2OTH9DF_2uxOjjg8UtVJeC6EG0Ptf8g0M5; H_BDCLCKID_SF_BFESS=tJk8_DPbJK-3fP36q4cBb-4WhmT22-us3g7W2hcH0b61EnR_XRQcbJ8LQ-Qi2lJTMITiaKJjBMb1DbRMLfjN5TODKf-DKb3pWDTm_q5TtUJMeCnTDMRh-l04XNbyKMnitIv9-pPKWhQrh459XP68bTkA5bjZKxtq3mkjbPbDfn028DKuDj-WDjJ0DGRf-b-X-I6b0nRH-njfebRNq4nKbICShG4tLlO9WDTm_DostI3SjJoNKbQ10xPD0n3OK6QHKj79-pPKKR7BfKQPhpQ8MqJbhMJtQnbW3mkjbpnDfn02OPKz0T5pKt4syPR8JfRnWn5RKfA-b4ncjRcTehoM3xI8LNj405OTbIFO0KJzJCcjqR8ZDTuBj55P; __yjs_duid=1_695635cb727c238e28cd4254a28a7a0e1627258379781; BAIDUID_BFESS=F934E08738623DF508F108DEF391CFB9:FG=1; __yjs_st=2_NDRiODllYWQzMjBiMzFhYTlmYWVjZTE4NjFkZTM5MmMwODhlZDE0MjVkYWVmMjIzMzc3MWI2Y2RlOTNkMWJkNDBhNmE2YTIyMTJlZjg0ODJiNzk0NDY2NTYxY2NkOGY5YjM5ODViMDAyZjAwY2E0MThjODUyMGM0N2JiMmEyZGEyMTA4ODdkNjViYjcwNDEwODhjNDkzNDg4YjQyMWNjYTI4ZjAzZDllYTg3YjE3ZDRiYWNlMmJkMzc3YjE1OGU5NWU4NjM3YWQxMjkwNDVkMmMyZTM1YTQ5ODgxNTA4ZjE3MDk2YTYwODg5MmY5ZTZlMmYxZGQ5ZTU1OTdkZGYxZV83X2VhYjhlOWZi; H_PS_PSSID=34300_34100_33969_34272_31254_33848_34282_26350_22158; delPer=0; PSINO=3; BA_HECTOR=002h218g2ka58g0lhq1gftcs10r; ab_sr=1.0.1_ZWRlNDJiMzk0ZWQ3YzZmYzgxMmQzOTIyZDBlN2FjZTIxNjIzODliZWE4MzZjZGEwZTBiMTIzNGRmNDhiYmM2NTJhZjI0ZjBkNTFlMjg4MWYxYmY3ZDMzMGVkNmQ1NTNhMDVkN2I1ZGViMDY2ZjBlNWJmOTk4NTBhZGIwOGU4OTg5YzNiM2QwZjVhMTFkYmQ0ODU2NTJkYzNkZmI0ZjI1MA==; PMS_JT=%28%7B%22s%22%3A1627305057015%2C%22r%22%3A%22https%3A//map.baidu.com/@11606355.22%2C4669275.88%2C5.4z%22%7D%29',
? ? ? ? 'Referer': 'https://map.baidu.com/search/%E9%B8%BF%E6%98%9F%E5%B0%94%E5%85%8B/@11606355.22,4669275.88,5z?querytype=s&da_src=shareurl&wd=%E9%B8%BF%E6%98%9F%E5%B0%94%E5%85%8B&c=1&src=0&pn=0&sug=0&l=5&b=(6569474.192744261,1360353.0162781863;12256345.744431017,7177600.4441499)&from=webmap&biz_forward=%7B%22scaler%22:1,%22styles%22:%22pl%22%7D&seckey=cde6ebb241c3d75c675c8688828640edba33c570fc006f6ccdee864f2e95d88033fc19e794fee19c2417a6953ba260f3e91efa7e82cbc9c45b5854aec79ce924b08cce22526301f3a8c80710ebb635e73f5eccb560ee1dc38add2dfc793843279646449563fa4547850c144c3838de6fb1efaab7253aa6e99c1de56b4ddbad3905f480e4d46e5414c519465f08bedee98acac8fc7d2f84f413b041287538b09a811ee347b66a4c2c948f2ffa2f6e7674e0c5cb2b6407b610181af9064f870280fd7053482a91caa7cb762068ea41c4bb7bd2f7899f81a2ba5ab3fde28503a6fdc54b0fdee52cc2d02da76e1a4f1b4745&device_ratio=1',
? ? ? ? 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/93.0.4573.0 Safari/537.36'
? ? }

? ? resp = requests.get(url, headers = headers)

? ? if resp.status_code == requests.codes.ok:
? ? ? ? print(resp.json())

獲取相應信息如下:

接下來我們先來獲取各個省份和對應的數(shù)量,因為咱們國家除了23個省還有直轄市等,所以我們要分步獲取

中國共計34個省級行政區(qū),包括23個省、5個自治區(qū)、4個直轄市、2個特別行政區(qū)。23個省分別為:河北省、山西省、遼寧省、吉林省、黑龍江省、江蘇省、浙江省、安徽省、福建省、江西省、山東省、河南省、湖北省、湖南省、廣東省、海南省、四川省、貴州省、云南省、陜西省、甘肅省、青海省、臺灣省。
5個自治區(qū)分別為:內(nèi)蒙古自治區(qū)、廣西壯族自治區(qū)、西藏自治區(qū)、寧夏回族自治區(qū)、新疆維吾爾自治區(qū)。4個直轄市分別為:北京市、天津市、上海市、重慶市。2個特別行政區(qū)分別為:香港特別行政區(qū)、澳門特別行政區(qū)。

四個直轄市所在的位置是不同于其它城市的,分布如下:

我們將獲取到的信息使用熊貓保存在省份的Excel中,代碼如下:

? ? prov = []
? ? value = []

? ? # 獲取四個直轄市
? ? hot_city = datas.json()['hot_city']
? ? for i in hot_city:
? ? ? ? pv = i.split('|')
? ? ? ? if '北京市' in pv[0]:
? ? ? ? ? ? prov.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '上海市' in pv[0]:
? ? ? ? ? ? prov.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '天津市' in pv[0]:
? ? ? ? ? ? prov.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '重慶市' in pv[0]:
? ? ? ? ? ? prov.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? # 打印出所有省份信息
? ? city_list = datas.json()['more_city']
? ? for item in city_list:
? ? ? ? # 獲取鴻星爾克所在省份
? ? ? ? province = item['province']
? ? ? ? prov.append(province)

? ? ? ? # 獲取鴻星爾克所在省份的數(shù)量
? ? ? ? prov_num = item['num']
? ? ? ? value.append(prov_num)


? ? ? ? pd_data = pd.DataFrame({
? ? ? ? ? ? '省份': prov,
? ? ? ? ? ? '數(shù)量': ?value,
? ? ? ? })

? ? pd_data.to_excel('省份.xlsx')
? ? ic('省份信息打印完成!')

Excel存儲省份數(shù)據(jù)如下:

同樣的我們可以獲取各個省份內(nèi)具體城市的紅鴻星爾克門店數(shù)量

所有城市信息包括熱門城市+更多城市 兩部分組成

city = []
? ? value = []

? ? # 獲取四個直轄市
? ? hot_city = datas.json()['hot_city']
? ? for i in hot_city:
? ? ? ? pv = i.split('|')
? ? ? ? if '廣州市' in pv[0]:
? ? ? ? ? ? city.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '成都市' in pv[0]:
? ? ? ? ? ? city.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '南京市' in pv[0]:
? ? ? ? ? ? city.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '杭州市' in pv[0]:
? ? ? ? ? ? city.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '武漢市' in pv[0]:
? ? ? ? ? ? city.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? ? ? if '深圳市' in pv[0]:
? ? ? ? ? ? city.append(pv[0])
? ? ? ? ? ? value.append(pv[1])

? ? # 打印出所有城市信息
? ? city_list = datas.json()['more_city']

? ? for item in city_list:
? ? ? ? cities = item['city']

? ? ? ? for i in cities:
? ? ? ? ? ? # 獲取鴻星爾克所在省份的市區(qū)
? ? ? ? ? ? cit = i['name']
? ? ? ? ? ? city.append(cit)
? ? ? ? ? ? # 獲取鴻星爾克所在省份的市區(qū)對應的數(shù)量
? ? ? ? ? ? city_num = i['num']
? ? ? ? ? ? value.append(city_num)

? ? ? ? ? ? pd_data = pd.DataFrame({
? ? ? ? ? ? ? ? '城市': city,
? ? ? ? ? ? ? ? '數(shù)量': value,
? ? ? ? ? ? })

? ? ? ? ? ? pd_data.to_excel('城市.xlsx')

? ? ic('城市信息打印完成!')

Excel存儲城市數(shù)據(jù)如下:

3、數(shù)據(jù)處理

我們先要使用Pandas來讀取并且清洗數(shù)據(jù)

主要就是去掉省份后面的’省’字和‘自治區(qū)’等

# 讀取文件
? ? pd_data = pd.read_excel('省份.xlsx')

? ? prov = pd_data['省份'].tolist()
? ? prov_num = pd_data['數(shù)量'].tolist()

? ? name = []
? ? for i in prov:
? ? ? ? if "省" in i:
? ? ? ? ? ? name.append(i.replace('省', ''))
? ? ? ? elif '內(nèi)蒙古自治區(qū)' in i:
? ? ? ? ? ? name.append(i.replace('自治區(qū)', ''))
? ? ? ? else:
? ? ? ? ? ? name.append(i[:2])
? ? ic(name)
? ? ic(prov)

? ? '''
? ? 2021-07-27 20:50:50.752477|name: ['北京','上海','天津','重慶','廣東','浙江','山東','江蘇','河北','安徽','湖南','四川','福建','河南','內(nèi)蒙古','山西','廣西','貴州','黑龍江','湖北','云南','甘肅','遼寧','陜西','江西','吉林','上海','新疆','天津','寧夏','海南','西藏','青海']
2021-07-27 20:50:50.752477|prov: ['北京市','上海市','天津市','重慶市','廣東省','浙江省','山東省','江蘇省','河北省','安徽省','湖南省','四川省','福建省','河南省','內(nèi)蒙古自治區(qū)','山西省','廣西壯族自治區(qū)','貴州省','黑龍江省','湖北省','云南省','甘肅省','遼寧省','陜西省','江西省','吉林省','上海市','新疆維吾爾自治區(qū)','天津市','寧夏回族自治區(qū)','海南省','西藏自治區(qū)','青海省']
? ? '''

接下來我們使用pyecharts來可視化我們清洗過后的數(shù)據(jù)

map = (
? ? ? Map()
? ? ? .add("數(shù)量分布", [list(z) for z in zip(prov, prov_num)], "china")
? ? ? .set_global_opts(
? ? ? title_opts=opts.TitleOpts(title="鴻星爾克全國門店分布圖"),
? ? ? visualmap_opts=opts.VisualMapOpts(max_=500, is_piecewise=True),
? ? ? )

? )
? map.render('省份.shtml')
? ic('省份分布圖繪制完畢!')

效果圖如下:

省份所在的各個城市圖也是同理。我們就以門店最多的廣東作為案例,你也可以選擇任意省份哈

抓取數(shù)據(jù)->存儲數(shù)據(jù)->處理數(shù)據(jù)->可視化數(shù)據(jù)最終效果如下:

數(shù)據(jù)可視化之后一目了然,比起看Excel更加賞心悅目。并且事半功倍。

到此這篇關于用 Python 繪制全國鴻星爾克門店分布圖的文章就介紹到這了,更多相關 Python 繪制全國鴻星爾克門店分布圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python繪圖庫Matplotlib的安裝

    python繪圖庫Matplotlib的安裝

    這篇文章主要介紹了python庫繪圖Matplotlib的安裝,需要的朋友可以參考下
    2014-07-07
  • python使用protobufde的過程解析

    python使用protobufde的過程解析

    Google開源的一個序列化框架,類似于xml , json。最大的特點是基于 二進制,比傳統(tǒng)的xml表示同樣的內(nèi)容要短小很多。亦可定義一些可選字段,用于服務端與客戶端通信
    2021-08-08
  • Python Series從0開始索引的方法

    Python Series從0開始索引的方法

    今天小編就為大家分享一篇Python Series從0開始索引的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python將中文數(shù)字轉化成阿拉伯數(shù)字的簡單方法

    python將中文數(shù)字轉化成阿拉伯數(shù)字的簡單方法

    這篇文章主要給大家介紹了關于python如何將中文數(shù)字轉化成阿拉伯數(shù)字的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03
  • Python對圖像進行灰度處理的代碼介紹

    Python對圖像進行灰度處理的代碼介紹

    這篇文章主要給大家介紹了關于Python對圖像進行灰度處理的相關資料,圖像灰度化是將一幅彩色圖像轉換為灰度化圖像的過程,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • Python如何配置環(huán)境變量詳解

    Python如何配置環(huán)境變量詳解

    今天帶大家學習python如何配置環(huán)境變量,文中有非常詳細的步驟,對正在學習python的小伙伴們有很好地幫助,需要的朋友可以參考下
    2021-05-05
  • Python實現(xiàn)天氣查詢軟件

    Python實現(xiàn)天氣查詢軟件

    今天給大家?guī)硪粋€不是那么實用的小工具-天氣查詢,文中詳細介紹了如何實用Python實現(xiàn)天氣查詢系統(tǒng),需要的朋友可以參考下
    2021-06-06
  • Python unittest工作原理和使用過程解析

    Python unittest工作原理和使用過程解析

    這篇文章主要介紹了Python unittest工作原理和使用過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • 如何使用python數(shù)據(jù)處理解決數(shù)據(jù)沖突和樣本的選取

    如何使用python數(shù)據(jù)處理解決數(shù)據(jù)沖突和樣本的選取

    這篇文章主要介紹了如何使用python數(shù)據(jù)處理解決數(shù)據(jù)沖突和樣本的選取,其中主要包括 實際業(yè)務數(shù)據(jù)沖突、樣本選取問題、數(shù)據(jù)共線性等思路
    2021-08-08
  • neo4j網(wǎng)址拒絕訪問的問題及解決

    neo4j網(wǎng)址拒絕訪問的問題及解決

    這篇文章主要介紹了neo4j網(wǎng)址拒絕訪問的問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02

最新評論