扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
可以使用多进程或多线程并发下载。其实你的方法已经是多进程的一种了。
成都创新互联是专业的赵县网站建设公司,赵县接单;提供网站建设、成都网站制作,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行赵县网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
python中有多进程模块multiprocessing和多线程multithreading。
思路是这样,将需要下载的连接送入队列,然后各个进程(或线程)从队列里拿任务然后下载。前面的两个类库都提供进程、线程安全的队列。
楼下给了个多线程的示例,这里我给一个稍微复杂点的进程的示例。其实线程和进程库的接口基本是一致的。
#!/usr/bin/env python
# encoding=utf-8
# test.py
from multiprocessing import Queue, Process
from Queue import Empty
import urllib
import time
urls = [line.strip() for line in open('urls.txt')]
queue = Queue(1024)
for url in urls:
queue.put(url)
def download():
while True:
try:
url = queue.get()
f = urllib.urlopen(url)
r = f.read()
# 这里保存你下载的文件
except Empty:
time.sleep(5)
except Exception, e:
print 'download error: %s' % e
for i in range(10):
p = Process(target=download)
p.start()
p.join()
使用方法:编辑一个文件urls.txt,每行一个url。然后:
nohup ./test.py
结束进程则需要找到它的进程号,然后kill -9
望采纳,谢谢支持!
<strong>答案如下:</strong>
在使用Python3时,如果没有相应的函数库可以使用,其实可程序的功能知识提供使用者操作系统的一个接口,因此这个可程序需要可以调用其他软件才好。有很多命令行命令,man,chmod,chown, vi, fdisk等指令,这些指令都是独立的应用程序,但是我们可以通过可程序(就是命令行界面)来操作这些应用程序,让这些应用程序来运行所需的工作“也就是说,只要能够操作应用程序的接口都能够称为壳程序。狭义的壳程序指的是命令行方面的软件,包括本章要介绍的 bash 等。广义的壳程序则包括图形接口的软件!因为图形接口其实也能够操作各种应用程序来调用核心工作。”
拼装后作为参数:
cmd = 'RETR ' + name()
frp.retrbinary(cmd, file_handel, bufsize)
给你一段代码吧。
import socket
socket.setdefaulttimeout(5.0)
import urllib
urllib.urlretrieve(url,filename)
通过socket类设置全局的超时。
步骤如下:1、下载并安装Python For Windows。打开Python官方网站(python.org),推荐下载Python 2.7.X版本。
2、安装Python:一路默认设置Next下去,直到Finish,完成Python安装。
3、在这里推荐使用PyCharm: PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。
4、下载PyCharm集成开发软件,官网提供了两种版本:Professional Edition(专业版可以试用30天,学习Python30天也够用了。也有热心网友提供License key,可自行搜索),Community Edition(社区版,功能少一点但也够用了)。
5、安装PyCharm集成开发软件:一路默认设置Next下去,直到Finish,完成PyCharm的安装。Win8的界面,就是没有官网展示的好看。
6、配置PyCharm一:风格(配色方案)的调整::【File】→【Settings】→【 Editor】→【Colors Fonts】→Scheme选择Dracula。
使用 pip 命令行工具在线下载你需要的第三方库。
具体步骤如下:使用pip工具安装软件包的命令是:pipinstallsome到package到name。我们现在下载名字为:requests的第三方库。在命令行窗口中执行下面的命令:pipinstallrequests
这样 requests 第三方库就下载和安装完成了。
Python由荷兰数学和计算机科学研究学会的吉多·范罗苏姆 于1990 年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流