Worker
Worker 類別代表一個 WebWorker。 worker
事件會在頁面物件上發射以表示工作執行緒的建立。 close
事件會在工作執行緒物件消失時發射。
def handle_worker(worker):
print("worker created: " + worker.url)
worker.on("close", lambda: print("worker destroyed: " + worker.url))
page.on('worker', handle_worker)
print("current workers:")
for worker in page.workers:
print(" " + worker.url)
方法
評估
在 v1.9 之前加入傳回 expression 的傳回值。
如果傳遞給 worker.evaluate() 的函式傳回一個 Promise,則 worker.evaluate() 將等待 Promise 解析並傳回其值。
如果傳遞給 worker.evaluate() 的函式傳回一個非 Serializable 值,則 worker.evaluate() 會傳回 undefined
。Playwright 也支援傳輸一些額外的非 JSON
可序列化的值:-0
、NaN
、Infinity
、-Infinity
。
用法
worker.evaluate(expression)
worker.evaluate(expression, **kwargs)
參數
-
要在瀏覽器環境中評估的 JavaScript 表達式。如果表達式評估為函式,則會自動調用該函式。
-
arg
EvaluationArgument (選用)#傳遞給 expression 的選用參數。
傳回
評估控制代碼
在 v1.9 之前加入以 JSHandle 形式傳回 expression 的傳回值。
worker.evaluate() 和 worker.evaluate_handle() 之間的唯一區別在於 worker.evaluate_handle() 傳回 JSHandle。
如果傳遞給 worker.evaluate_handle() 的函式傳回一個 Promise,則 worker.evaluate_handle() 將等待 Promise 解析並傳回其值。
用法
worker.evaluate_handle(expression)
worker.evaluate_handle(expression, **kwargs)
參數
-
要在瀏覽器環境中評估的 JavaScript 表達式。如果表達式評估為函式,則會自動調用該函式。
-
arg
EvaluationArgument (選用)#傳遞給 expression 的選用參數。
傳回
屬性
url
在 v1.9 之前加入用法
worker.url
傳回
事件
on("close")
在 v1.9 之前加入當此專用的 WebWorker 終止時發射。
用法
worker.on("close", handler)
事件資料