如何使用phantomjs或其他浏览器在nodejs中创建Web代理?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何使用phantomjs或其他浏览器在nodejs中创建Web代理?相关的知识,希望对你有一定的参考价值。

我一直在尝试使用phanthonjs或类似的方法创建一个Web代理服务器,并在浏览器中查看和导航

var phantom = require('phantom');

phantom.create().then(function(ph) {
  ph.createPage().then(function(page) {
    page.open('https://stackoverflow.com/').then(function(status) {
      console.log(status);
      page.property('content').then(function(content) {
        console.log(content);
        page.close();
        ph.exit();
      });
    });
  });
});
答案
const express = require('request');
const puppeteer = require('puppeteer');

const app = express();

app.use('/', async (req, res) => {
   const url = 'http://somesite.com';
   const browser = await puppeteer.launch();
   const page = await browser.newPage();
   await page.goto(url);
   const content = await page.content();
   res.send(content);
   await browser.close();
});

app.listen(3000, () => { console.log('App is running on port 3000') }

多数民众赞成我将如何实现它,如果我想使用无头浏览器。语法与其他无头浏览器不同。但是想法是完全一样的。 :)

以上是关于如何使用phantomjs或其他浏览器在nodejs中创建Web代理?的主要内容,如果未能解决你的问题,请参考以下文章

phantomjs:如何在phantomjs中使用npm模块?

如何让 phantomjs 安装在弹性豆茎上?

Phantomjs+Nodejs+Mysql数据抓取(1.数据抓取)

Phantomjs+Nodejs+Mysql数据抓取(2.抓取图片)

如何在 PhantomJS 中使用 JavaScript 检测网页上的声音?

如何在 PhantomJS 中处理 PDF 分页