程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

暂无数据

Python 彼此并行运行异步请求任务

发布于2022-12-01 07:34     阅读(1030)     评论(0)     点赞(30)     收藏(3)


我的 CSV 中有 10 个链接,我试图同时运行所有这些链接。(同时有 10 个请求)。然而,它现在的工作方式是,它向链接 1 发送请求,等待它完成,然后是链接 2,依此类推。

有人知道它是如何通过下面的代码变成并行运行的吗?提前致谢。

def getTasks(tasks):
    for task in tasks:
      asyncio.run(startTask(task))


async def startTask(task):

  order = await getProduct(task) # gets product sizes and prices
  if order is None:
    print(f"No prices under €{task.maxPrice} found! - {task.link}")
    time.sleep(3)
    return startTask(task)
  print(f"Prices under €{task.maxPrice} found! - {task.link}")


  success = await postAddToCart(task, order) # adds to card
  print(f"Product added to cart")
  if not success:
    return startTask(task)

  success = await postConfirm(task, order) # confirms cart
  print(f"Product cart confirmed")
  if not success:
    return startTask(task)


  success = await getStartCheckout(order) # get request to start checkout
  print(f"Checkout successfully started")
  if not success:
    return startTask(task)


  success = await postStartCheckout(task, order) # post profile delivery info
  print(f"Checkout information posted")
  if not success:
    return startTask(task)


  success = await postSavePayment(order) # post saves payment method (CC)
  print(f"Payment saved")
  if not success:
    return startTask(task)


  success = await postStartPayment(order) # post checkout
  print(f"Successfully checked out!")
  if not success:
    return startTask(task)

  success = await sendWebhook(task, order) # send to discord
  print(f"Sending webhook!")
  if not success:
    return startTask(task)

  return

解决方案


暂无回答



所属网站分类: 技术文章 > 问答

作者:黑洞官方问答小能手

链接:https://www.pythonheidong.com/blog/article/1870634/dfc5051b234707de5abc/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

30 0
收藏该文
已收藏

评论内容:(最多支持255个字符)