繁体   English   中英

python中如何循环使用wget一一下载

[英]How to download using wget one by one in a loop in python

我编写了以下从页面下载的代码:

import urllib2,os
    from bs4 import BeautifulSoup

    page = urllib2.urlopen('http://somesite.com')
    soup = BeautifulSoup(page)

    for a in soup.find_all('a', href=True):
        if "tutorials" in a['href']:
            os.system('wget ' + a['href'])

问题是上面的命令是它从页面完全下载所有链接。 我想一一下载视频。 这可能吗? 请帮帮我。

使用 subprocess.call 模块而不是 os.system。

subprocess.call(['wget' , a['href']])

我来晚了,但我认为这可能对某人有所帮助。 如何在单独的函数中使用os.system()并在每次循环中调用它?

像:

def helper(arg):
   if(os.system(arg) == 0):
        print(arg," completed")
        return None

for link in links:
    helper("wget "+link)

我认为这将确保一对一下载。 如果我错了,请纠正我。 谢谢!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM