【307】◀▶ Python 相关功能实现

时间:2022-08-31 23:22:28

目录:

1. Python 实现下载文件

2. 删除文件名中的点 “.”

3. 让 Python 脚本暂停执行的方法

4. 添


1. Python 实现下载文件

  使用 urllib 模块提供的 urlretrieve() 函数。urlretrieve() 方法直接将远程数据下载到本地。

  语法如下所示:

urlretrieve (url, filename=None, reporthook=None, data=None) 

参数 finename 指定了保存本地路径(如果参数未指定,urllib会生成一个临时文件保存数据。)
参数 reporthook 是一个回调函数,当连接上服务器、以及相应的数据块传输完毕时会触发该回调,我们可以利用这个回调函数来显示当前的下载进度。
参数 data 指 post 到服务器的数据,该方法返回一个包含两个元素的(filename, headers)元组,filename 表示保存到本地的路径,header 表示服务器的响应头。

  以下代码实现批量下载图片到指定的文件夹:

import os
import urllib

# 设置工作空间
os.chdir(r"D:\tmp")

for i in range(170, 170):
	url = "http://www.100875.com.cn:1314/data/upload/sx7x2012/7x" + str(i+1).zfill(3) + ".jpg"
	urllib.urlretrieve(url, str(i+1).zfill(3) + ".jpg")

  参考:python实现下载文件的三种方法(推荐)

  参考:python实现文件下载的方法总结

  参考:Python 简单爬虫程序 以及 urllib.urlretrieve()方法 改变文件存放文件位置


2. 删除文件名中的点 “.”

  在进行 ArcPy 代码处理的时候,如果 shp 文件的文件名中存在点“.”会报错,例如这样的文件名 union2018.04.11.shp,因此需要将里面的点去掉,或者替换为下划线“_”,如下的代码预设条件为,根目录下有 N 个文件夹,每一个文件夹中有 N 个 shp 文件,代码如下:

# 文件夹套文件夹的形式,此为根目录
rootdir = r"D:\01-Working\2018\20180411-HAD_FREQ\2017shp"
# 获取子文件夹
folders = os.listdir(rootdir)
    
# 遍历子文件夹里面的文件重命名
for folder in folders:
    fs = os.listdir(os.path.join(rootdir, folder))
    for f in fs:
        file_ext = os.path.splitext(f)
        # 纯文件名
        f_name = file_ext[0]
        # 扩展名,前面带点
        f_ext = file_ext[1]
        # 如果文件名中存在点,则将其替换为下划线重命名
        if f_name.find(".") > 0:
            path_new = f_name.replace(".", "_") + f_ext
            os.rename(os.path.join(rootdir, folder, f), os.path.join(rootdir, folder, path_new))

  说明:通过 os.path.splitext() 函数可以将文件名和扩展名分开,这样在处理文件名的点的问题就不会受到扩展名的影响了。


3. 让 Python 脚本暂停执行的脚本

  正常情况下 Python 脚本执行后会消失,为了让脚本暂停而不是立即消失,可以在脚本末尾添加如下代码:

import os
os.system("pause")

参考:让Python脚本暂停执行的几种方法


4. 添

  A


5. 同一图层的多个要素合并

 

 

 

 

 


6. 同一图层的多个要素合并

 

 

 

 

 


7. 同一图层的多个要素合并

 

 

 

 

 


8. 同一图层的多个要素合并

 

 

 

 

 


9. 同一图层的多个要素合并

 

 

 

 

 


10. 同一图层的多个要素合并

 

 

 

 

 


11. 同一图层的多个要素合并

 

 

 

 

 


12. 同一图层的多个要素合并

 

 

 

 

 


13. 同一图层的多个要素合并

 

 

 

 

 


14. 同一图层的多个要素合并

 

 

 

 

 


15. 同一图层的多个要素合并