• python多线程下载网页图片并保存至特定目录


    #!python3
    #multidownloadXkcd.py  - Download XKCD comics using multiple threads.
    
    import requests
    import bs4
    import os
    import threading
    
    # os.mkdir('xkcd', exist_ok=True)     # store comics in ./xkcd
    if os.path.exists('xkcd'):
        print("xkcd is existed!")
    else:
        os.mkdir('xkcd')
    
    def downloadXkcd(startComic, endComic):
        for urlNumber in range(startComic, endComic):
            #Download the page
            print("Downloading page http://xkcd.com/%s..." % urlNumber)
            res = requests.get('http://xkcd.com/%s' % urlNumber)
            res.raise_for_status()
    
            print(res.text)
            soup = bs4.BeautifulSoup(res.text)
    
            #Find the URL of the comic image.
            comicElem = soup.select('#comic img')
            if comicElem == []:
                print('Could not find comic images.')
            else:
                comicUrl = comicElem[0].get('src')
            #     #Download the image.
            #     print('Downloading image %s...' % (comicUrl))
            #     res = requests.get(comicUrl)
            #     res.raise_for_status()
            #
            #     # Save the image to ./xkcd
            #     imageFile = open(os.path.join('xkcd', os.path.basename(comicUrl)), 'wb')
            #     for chunk in res.iter_content(100000):
            #         imageFile.write(chunk)
            #     imageFile.close()
    
    downloadThread = threading.Thread(target=downloadXkcd(555, 557))
    downloadThread.start()
    
    # # TODO: Create and start the thread objects
    # downloadThreads = []        # a list of all the Thread objects
    # for i in range(500, 600, 10):
    #     downloadThread = threading.Thread(target=downloadXkcd, args=(i, i+9))
    #     downloadThreads.append(downloadThread)
    #     downloadThread.start()
    #
    # # TODO: Wait for all threads to end
    # for downloadThread in downloadThreads:
    #     downloadThread.join()
    # print("Done.")
    

      

  • 相关阅读:
    经典语录二
    squid通过正向代理访问互联网
    jQuery
    CSS常用属性
    css基本选择器
    html标签
    事件驱动模型与IO模型
    协程
    进程与线程
    软件安装 yum rpm
  • 原文地址:https://www.cnblogs.com/noxy/p/8076439.html
Copyright © 2020-2023  润新知