```python
async def main():
browser = await launch(headless=False)
page = await browser.newPage()
await page.goto("
https://www.dandanzan10.top/dianying/") #
https://www.python.org # await page.screenshot(path="yvain.png") #
await asyncio.sleep(3)
await page.screenshot({"path": "yvain.png"})
print(await page.content())
await browser.close()
if __name__ == '__main__':
print("Starting...")
# asyncio.create_task(main())
# asyncio.ensure_future(main())
asyncio.run(main())
print("Screenshots has been taken.")
```
问题解答:
1. 没有打开浏览器:协程没有运行
2. 同上
3. 同上,外加 page.content() 是个协程对象,因此需要 await
6. 使用 create_task 前 必须要有 event_loop ,这个函数作用是创建 Task 对象,并立即加入到事件循环的 loop 中,如果 loop 为 None ,就会报错; ensure_future 是将协程对象或可等待对象包装成一个 Future 对象,loop 为空不会报错
另外,
- 协程中一般不用 time.sleep ,它不支持协程自动切换