Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const puppeteer = require('puppeteer');
- const url = process.argv[2];
- //console.log(url);
- (async () => {
- const browser = await puppeteer.launch();
- const page = await browser.newPage();
- await page.goto(url, {waitUntil: 'networkidle0'});
- await page.waitFor(1500);
- const info = await page.evaluate(() => {
- let products = [];
- let blocks = document.querySelectorAll('div.product-list.m-bg-white > ul > li');
- for(let i=0; i<blocks.length; i++){
- console.log(i, blocks[i])
- let name = blocks[i].querySelector('.view-info > h1 > a');
- let vendor = blocks[i].querySelector('.view-info > div.line.cfg.mt6 > a');
- let price = blocks[i].querySelector('.view-price > div > span');
- let rate = blocks[i].querySelector('.view-desc > div.line.info.mt6 > div > i');
- let sold = blocks[i].querySelector('.view-desc > div.line.cfg.mt6');
- let product = {
- 'name': name && name.innerText,
- 'vendor': vendor && vendor.innerText,
- 'price': price && price.innerText,
- 'sold': sold && sold.innerText,
- 'rate': rate && rate.style.width
- };
- console.log(i, product);
- products.push(product);
- }
- return {
- 'products' : products
- };
- });
- info['url'] = url;
- console.log(JSON.stringify(info));
- //console.log(info);
- await browser.close();
- })();
Add Comment
Please, Sign In to add comment