alex_bn_lee

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

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

目录:

1. Python 实现下载文件

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

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

4. 添


1. Python 实现下载文件

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

  语法如下所示:

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

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

1
2
3
4
5
6
7
8
9
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 文件,代码如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
# 文件夹套文件夹的形式,此为根目录
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 脚本执行后会消失,为了让脚本暂停而不是立即消失,可以在脚本末尾添加如下代码:

1
2
import os
os.system("pause")

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


4. 添

  A


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

 

 

 

 


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

 

posted on   McDelfino  阅读(290)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)
历史上的今天:
2016-04-08 【201】SeaDAS代码
2013-04-08 【115】StrokeIt相关操作
2012-04-08 【030】◀▶ ArcEngine 一些实现代码
点击右上角即可分享
微信分享提示