如何用Apify序列化iframe的表单数据

How to serialize form data of iframe with Apify

好的,所以我尝试序列化一个表单数据,但是我得到了未定义的 这是代码:

 const frame = page.frames().find(frame => frame.url().includes('reservation'));
const aHandle = await frame.evaluateHandle('document'); 
const form= await aHandle.$eval('#reservationData', element => element.outerHTML);
var theform = await serialize(form);
console.log(theform);

我不知道序列化函数长什么样。能提供这个功能的代码吗?

但您可以使用 frame.$eval(selector, pageFunction[, ...args]) 和 jQuery 轻松完成。

const Apify = require('apify');

...

await Apify.utils.puppeteer.injectJQuery(page);
const frame = page.frames().find(frame => frame.url().includes('reservation'));
const theForm = frame.$eval('#reservationData', (form) => $(form).serialize())
console.log(theform);