zoukankan      html  css  js  c++  java
  • Python--多线程

    import threading
    import time
    import requests


    def say_hi(name):
    time.sleep(2)
    print(name)


    def down_html(url1, name):
    res = requests.get(url1).content
    with open(name + '.html', 'wb') as f:
    f.write(res)


    urls = [
    ['nnzhp', 'http://www.nnzhp.cn'],
    ['dsx', 'http://www.imdsx.cn'],
    ['besttest', 'http://www.besttest.cn']
    ]

    start_time = time.time()
    # for url in urls:
    # down_html(url[1], url[0])

    threads = [] # 存放刚才启动的线程
    for url in urls:
    t = threading.Thread(target=down_html, args=(url[1], url[0]))
    t.start()
    threads.append(t)
    for t in threads:
    t.join() # 主线程等待子线程结束
    end_time = time.time()
    print(end_time - start_time)

    # for i in range(10):
    # t = threading.Thread(target=say_hi, args=('小黑',)) # 启动线程
    # t.start()

    100个url,启动5个线程
    import threading
    import time

    urls = list(range(100))


    def p(url):
    for u in url:
    print(u)


    start = 0
    end = 20

    for i in range(5):
    url_new = urls[start:end]
    start += 20
    end += 20
    t = threading.Thread(target=p, args=(url_new,))
    t.start()
  • 相关阅读:
    less中遇到的一些特殊的写法
    观察者模式
    发布订阅模式
    javascript中的函数
    关于js中this的理解和作用
    [Oracle]Oracle镜像安装及使用教程
    log4net日志配置
    过滤器
    .net core 处理 中文乱码
    Fromform
  • 原文地址:https://www.cnblogs.com/wangsilei/p/8522609.html
Copyright © 2011-2022 走看看