【发布时间】:2021-12-02 12:12:34
【问题描述】:
我是新来的,所以请忽略我在描述中犯的一些错误。
好的, 我有一个包含 10 个文本框和 5 个下拉菜单以及 2 个日期和时间的表单。 所以我想立即开始填写所有字段(文本框、下拉菜单和日期),完成所有填写后我必须点击提交按钮。
我想做一些类似 asyncio 的工作。
import asyncio
import time
async def say_after(delay, what):
await asyncio.sleep(delay)
print(what)
async def main():
task1 = asyncio.create_task(
say_after(5, 'hello'))
task2 = asyncio.create_task(
say_after(7, 'world'))
print(f"started at {time.strftime('%X')}")
# Wait until both tasks are completed (should take
# around 2 seconds.)
await task1
await task2
print(f"finished at {time.strftime('%X')}")
asyncio.run(main())
我已经尝试过类似线程的方法:
th1 = threading.Thread(target=__func_of_fill_1st_textbox__)
th2 = threading.Thread(target=__func_of_fill_2nd_textbox__)
th3 = threading.Thread(target=__func_of_fill_3rd_textbox__)
th4 = threading.Thread(target=__func_of_fill_4th_textbox__)
th1.start()
th2.start()
th3.start()
th4.start()
但遗憾的是,所有这些都不像 asyncio 那样同时执行。
如果我犯了一些错误,请忽略。
获得了可以理解的答案。
【问题讨论】:
标签: python multithreading selenium python-asyncio