browser = await launch(**start_parm)
page = await browser.newPage()
tk = tkinter.Tk()
width = tk.winfo_screenwidth()
height = tk.winfo_screenheight()
tk.quit()
await page.setViewport(viewport={'width': width, 'height': height})
js_text = """
() =>{
Object.defineProperties(navigator,{ webdriver:{ get: () => false } });
window.navigator.chrome = { runtime: {}, };
Object.defineProperty(navigator, 'languages', { get: () => ['en-US', 'en'] });
Object.defineProperty(navigator, 'plugins', { get: () => [1, 2, 3, 4, 5,6], });
}
"""
await page.evaluateonNewdocument(js_text) # 本页刷新后值不变,自动执行js
# await page.goto('https://login.taobao.com/member/login.jhtml?redirect_url=https://s.taobao.com/search')
await page.goto('https://news.163.com/')
**start_parm是传入浏览器的参数可以自行设置
js注入防止被webdrive检测到
给任务绑定回调函数
def callback(t): #对象t是在执行绑定的task
resp = t.result() #t.result()是return返回的数据
print(resp)
拿到数据可以根据数据自行选择数据解析
最后启动主程序
task = asyncio.ensure_future(main()) #创建任务
if __name__ == '__main__':
loop =asyncio.get_event_loop() #创建循环对象
task.add_done_callback(callback)#绑定回调函数
loop.run_until_complete(task)



