各位老铁们好,相信很多人对mip网站源码分享都不是特别的了解,因此呢,今天就来为大家分享下关于mip网站源码分享以及网站源码官网的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
日常的开发中,总是避免不了一些地域的选择,省份城市等没有那么精细的地域选择,很容易能找到,但如果想要更加精准的,比如到村级别的地域信息,就比较难找到现成可用的。想着要不就自己“整理”一份出来,一劳永逸,往后也都用得上。自然而然地,就想到了Python来“获取”官方的地域数据(也只有官方的才是最权威的),着手试试!
Python
动态代理
不使用代理,“获取”请求很快就会达到上限,被官方给限制了,后续的动作也就没办法开展了,我选了个比较热门的免费代理:https://www.xicidaili.com/nn/
39;——————(START)动态代理IP(&39;)——————\\n&39;开始获取动态代理IP(第&39;页)&39;&39;tr&39;td&39;https&39;port&39;addr&39;://&39;:&39;-解析成功\\n&根据URL获取网站信息\ndefgetPageInfo(url,encoding=&39;):\npage=&39;\ntryNum=0\nforiinrange(tries):\ntry:\nifproxies==&39;:\nresponse=requests.get(url,headers=proxyHeaders,timeout=5)\nelse:\nresponse=requests.get(url,headers=proxyHeaders,proxies=proxies,timeout=10)\nifencoding!=&39;:\nresponse.encoding=encoding\nifresponse.status_code==200:\npage=BeautifulSoup(response.text,&39;)\nbreak\nexcept:\ntryNum+=1\nprint(&39;+getTime()+&39;)\niftryNum>=5:\nproxies=getRandomIp()\nprint(&39;+proxies[&39;]+&39;)\nreturnpage
获取页面内容
解析省份数据
解析列表内容中,统一的provincetr样式类名,再往下搜索a链接。
39;——————(START)\\033[0;31;40m省份链接\\033[0m(&39;)——————\\n&39;r+&39;utf-8&39;index.html&39;gbk&39;&39;tr&39;class&39;provincetr&39;a&39;href&39;\\033[0;31;40m&39;\\033[0m&39;&39;name&39;url&39;(\\033[0;33;40mNOTICE\\033[0m)省份链接信息已存在,默认未设置强制更新(可在代码内修改forceRefresh值)&39;&39;\\n(\\033[0;31;40mERROR\\033[0m)省份链接信息已存在,但内容存在错误,请检查(&39;)&39;&39;\\n(\\033[0;31;40mERROR\\033[0m)3次尝试获取省份链接信息失败,强制终止继续执行(&39;)&39;&39;\\n\\n——————(END)\\033[0;31;40m省份链接\\033[0m(&39;)——————\\n\\n\\n&保存省份数据信息\ndefsaveProvinceData():\nprint(&39;+getTime()+&39;)\nprovinceDataFile=dataPath+provinceFileName\ncityLinkFile=linkPath+cityFileName\nprovinceExistData=[]\nwithopen(provinceDataFile,&39;,encoding=&39;)asprovinceDataFileHandler,open(cityLinkFile,&39;,encoding=&39;)ascityLinkFileHandler:\ncityLinkData=json.load(cityLinkFileHandler)\niflen(provinceDataList)<=0andlen(cityLinkData)>0:\nforiincityLinkData:\nifi[&39;]notinprovinceExistData:\nprovinceExistData.append(i[&39;])\nprovinceDataList.append({\n&39;:i[&39;],\n&39;:i[&39;]\n})\nsaveJsonInfo(provinceDataList,provinceDataFileHandler)\nprint(&39;+str(len(provinceDataList))+&39;+provinceDataFile+&39;)\neliflen(provinceDataList)>0:\nsaveJsonInfo(provinceDataList,provinceDataFileHandler)\nprint(&39;+str(provinceTotalNum)+&39;+provinceDataFile+&39;)\nelse:\nprint(&39;+cityLinkFile+&39;)\ncityLinkFileHandler.close()\nprovinceDataFileHandler.close()\nprint(&39;+getTime()+&39;)
保存省份数据
总结
https://git.makeit.vip/MIITVIP/MIIT-Python-Official-Regions,这个是我自己搭建的Gogs平台,代码我就放在这儿了,暂时没上传到Github上去。因为接下来的
关于mip网站源码分享和网站源码官网的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
