Puppeteer에서 빈 개체 반환 해결 page.evaluate querySelectorAll
Puppeteer에서 평가 함수를 통해 querySelectorAll 메서드를 사용하여 문서 요소를 검색하려고 시도 종종 빈 객체의 배열로 이어집니다. 이는 Puppeteer로 작업하는 동안 흔히 발생하는 문제입니다.
이 문제를 해결하려면 평가 함수에서 반환된 값이 JSON 직렬화 가능해야 한다는 점에 유의하는 것이 중요합니다. 제공된 예에서 '제목' 요소와 같은 복잡한 요소를 평가할 때 결과 개체에는 함수와 같은 직렬화할 수 없는 값이 포함됩니다.
해결책은 JSON을 반환하기 전에 요소에서 원하는 정보를 추출하는 데 있습니다. 직렬화 가능한 값. 이 경우 전체 요소 개체 대신 요소에서 href 값을 추출하는 것이 목표입니다.
아래와 같이 평가 함수를 수정하면 href 값 목록을 성공적으로 검색할 수 있습니다.
await this.page.evaluate((sel) => { let elements = Array.from(document.querySelectorAll(sel)); let links = elements.map(element => { return element.href }) return links; }, sel);
이렇게 하면 반환된 값이 JSON 직렬화 가능하고 결과 배열에서 빈 개체 문제가 해결됩니다.
위 내용은 `querySelectorAll`을 사용하여 Puppeteer의 `page.evaluate`에서 빈 개체 반환을 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!