Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const puppeterr = require('puppeteer');
- const fs = require('fs');
- const path = require('path');
- (async () => {
- // Set up brower and page
- const browser = await puppeterr.launch({
- headless: false
- })
- const page = await browser.newPage();
- await page.goto(
- 'https://www.facebook.com/parkshoppingcg.oficial/reviews/',
- {waitUntil: 'domcontentloaded'},
- {waitUntil: 'load'}
- )
- const bodyHandle = await page.$('body')
- let { height } = await bodyHandle.boundingBox();
- await bodyHandle.dispose();
- const wrapper = '.userContentWrapper';
- const viewportHeight = 800;
- let viewportIncr = 0;
- while (viewportIncr + viewportHeight < height) {
- await page.waitFor(1200)
- await page.evaluate(() => window.scrollBy(0, document.body.scrollHeight))
- viewportIncr = viewportIncr + viewportHeight;
- height = await page.evaluate(() => document.body.scrollHeight)
- await page.waitFor(2000)
- }
- const reviews = await page.evaluate(wrapper => {
- let rr = Array.from(document.querySelectorAll(wrapper))
- return rr.map(r => r.innerHTML)
- }, wrapper)
- const replaced = reviews.map(rr => rr.replace(/<[^>]*>/gim, ''))
- const stream = fs.createWriteStream(path.join(__dirname, 'myFile2.txt'));
- replaced.forEach(r => stream.write(r + '\n'))
- stream.end()
- await browser.close();
- // const replaced = reviews.map(rr => rr.replace(/<[^>]*>/gim, ''))
- // console.log(replaced)
- // await browser.close();
- })();
Advertisement
Add Comment
Please, Sign In to add comment