当前位置: 首页 > news >正文

98证书兼职网/汕头自动seo

98证书兼职网,汕头自动seo,宁波seo关键词,尚海整装装修怎么样Puppeteer项目介绍 Puppeteer项目地址:https://github.com/puppeteer/puppeteer Puppeteer是谷歌开发开源的node库,提供了高级API通过DevTool协议控制Chromium或Chrome。Puppeteer默认以headless模式运行。最大的特点是操作Dom可以完全在内存中进行模拟…

Puppeteer项目介绍

Puppeteer项目地址:https://github.com/puppeteer/puppeteer
Puppeteer是谷歌开发开源的node库,提供了高级API通过DevTool协议控制Chromium或Chrome。Puppeteer默认以headless模式运行。最大的特点是操作Dom可以完全在内存中进行模拟,即在V8引擎中处理但不需要打开浏览器。在爬虫应用中,这也是Puppeteer最大的优势,相当于调用Chromium来访问web服务,模拟用户真实浏览器环境

const puppeteer = require('puppeteer');
(async () => {const browser = await puppeteer.launch();const page = await browser.newPage();await page.goto('https://example.com');await page.screenshot({path: 'example.png'});await browser.close();
})();

这是一个最简单的通过Puppeteer访问网站并截图的示例。

特定用法介绍

网上的其他关于Puppeteer的例子也有很多,这里介绍一种Puppeteer在特定爬虫情境下的用法。
在爬取某个页面数据时,由于页面post接口参数有一项签名数据,通过查看js代码,能找到生成签名的代码段,由于代码做了混淆压缩处理,可读性很差,并没能够将代码逻辑给梳理清楚。
即使代码我们看不懂,但是只要能够把对应的代码段摘取出来,通过Puppeteer的evaluate接口,我们也能够执行这段js代码。但是这里通过根据一些资料了解到,生成签名的代码段需要调用页面加载时,会自动带的一个随机数据,这个数据不是永远固定不变的,所以我们还需要一个访问这个页面的环境来执行这段js代码。
这时候Puppetteer的一个优势就体现出来了,可以完整模拟浏览器环境,只要我们访问对应页面,然后通过evaluate接口来执行js代码即可。
代码示例:

var targetUrl = "example.com";
var browser = await puppeteer.launch({defaultViewport:{width:1920, height:1080}
});
var page = await browser.newPage();
await page.goto(targetUrl);
var myParam = {param:"xxxxxx"};
var signStr = await page.evaluate((param) => {//执行脚本return result;
}, myParam);

拦截器的使用

这里用来抓取post接口返回数据

const browser = await puppeteer.launch();
const page = await browser.newPage();
page.setUserAgent("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36");
await page.setRequestInterception(true);
var targetUrl = "example.com";
page.on('request', async request => {request.continue();request_client({uri: request.url(),resolveWithFullResponse: true,}).then(async response => {const response_body = response.body;await page.waitFor(2000);await browser.close();});});
await page.goto(targetUrl, {waitUntil: 'networkidle0',
});

参考
puppeteer介绍(一)爬虫,性能,注入
爬虫利器 Puppeteer 的一些最佳实践
Puppeteer 详解 入门教程 (网页爬虫利器)
Puppeteer爬虫初探
puppeteer爬虫的奇妙之旅
万物皆可爬-puppeteer实战
Puppeteer拦截器在数据抓取中的使用
javascript - 在Chrome中加载页面时,如何捕获所有网络请求和完整的响应数据

http://www.jmfq.cn/news/4844737.html

相关文章:

  • 公司怎么做网站页面/搜索引擎seo外包
  • wordpress申请网站/舆情危机公关公司
  • 用html5做的网站过程/网站优化软件哪个好
  • 机械类网站模板/广州专门做网站
  • 昆明做企业网站多少钱/seo网络推广专员招聘
  • 政府网站建设 讲话/软文范例大全500字
  • 佛山公众平台网站推广多少钱/今日重大新闻事件
  • 虚拟机中建设iis网站/网站收录有什么用
  • 开发app找什么公司/武安百度seo
  • 广告设计网站免费/2000元代理微信朋友圈广告
  • 长春长春网站建设网/百度小程序排名优化
  • 专业网站开发哪里有/开一个网站需要多少钱
  • 免域名x网站/谷歌搜索引擎香港入口
  • 中国建设银行官网站招聘频道/app香港账号
  • 集团培训网站建设/seo个人博客
  • 手表网站 海马300米潜水表/百度快速排名优化技术
  • 珠海企业模板建站/国内最新新闻
  • 长沙好的网站建设公司/如何优化标题关键词
  • 做外贸要看哪些网站/百度网页版官网
  • 自己做影视网站/百度企业官网认证
  • 网站服务器解决方案/seo推广招聘
  • 专业商城网站制作/百度网站认证
  • 大连网站模板建站/图床外链生成工具
  • 做网站要不要用jsp/品牌推广外包
  • 怎么做网站打赏/湖北疫情最新消息
  • 上海心橙科技网站建设/市场营销策略有哪些
  • 武汉新闻网站/网站推广软件费用是多少
  • wordpress悬浮音乐播放器/网站seo诊断技巧
  • 泉州企业建站系统/推广平台免费b2b网站大全
  • wordpress用户关注/seo咨询河北