diff --git a/examples/search.js b/examples/search.js new file mode 100644 index 00000000..949d54ae --- /dev/null +++ b/examples/search.js @@ -0,0 +1,40 @@ +/** + * Copyright 2017 Google Inc. All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +(async() => { + +const {Browser} = require('puppeteer'); +const browser = new Browser(); + +const page = await browser.newPage(); +await page.goto('https://google.com', {waitUntil: 'networkidle'}); +// Type our query into the search bar +await page.type('puppeteer'); + +await page.click('input[type="submit"]'); + +// Wait for the results to show up +await page.waitForSelector('h3 a'); + +// Extract the results from the page +const links = await page.evaluate(() => { + const anchors = Array.from(document.querySelectorAll('h3 a')); + return anchors.map(anchor => anchor.textContent); +}); +console.log(links.join('\n')); +browser.close(); + +})();