这里专门开个帖子用来整理采集遇到的问题

How to Setup Puppeteer In CentOS 7 用spatie/browsershot成功采集百度知乎豆瓣B站

PHPer 2023-11-26 509 0 0

后面再bing上搜:centos puppeteer开启 sandbox

关键

sudo mv chrome_sandbox chrome-sandbox

sudo chown root chrome-sandbox

sudo chmod 4755 chrome-sandbox

前提是要先用nodejs安装了puppeteer 安装好后

fc823a9395-qq-jie-tu20231126171049_normal.jpg

安装spatie/browsershot,它把puppeteer的操作步骤封装好了

先在composer.json的require里加上

"spatie/browsershot": "^3.60"

然后运行

composer update spatie/browsershot

成功安装扩展后,看扩展的github说明

To use Chrome's newheadless modepass thenewHeadlessmethod:

Browsershot::url('https://example.com')->newHeadless()->save($pathToImage);

运行下面PHP代码

$content = \Spatie\Browsershot\Browsershot::url('https://www.baidu.com')->newHeadless()->bodyHtml(); // returns the html of the body
var_dump($content);die;

下面是报错

905b002da7-qq-jie-tu20231126162154_normal.jpg

安装了一些chrome浏览器的依赖

解决centos运行node项目puppeteer时chrome错误问题

又报错

No usable sandbox! Update your kernel or see

去GTP找答案

这个错误表示您的系统中的沙盒机制不可用。沙盒机制是一种安全措施,用于限制程序的访问权限,以防止恶意代码对系统造成损害。
在 spatie/browsershot 中,沙盒是用于隔离和执行浏览器引擎的一部分。首先,您可以尝试更新您的内核以解决此问题。内核是操作系统的核心组件,负责管理系统的硬件和软件资源。
如果您无法更新内核或仍然遇到问题,也可以尝试以下解决方案:
确保您的系统已安装必需的依赖项。您需要安装以下软件包:
libnss3
libasound2
libatk1.0-0
libc6
libcairo2
libcairo-gobject2
libdbus-1-3
libdbus-glib-1-2
libfontconfig1
libfreetype6
libgcc1
libgdk-pixbuf2.0-0
libglib2.0-0
libgtk-3-0
libnspr4
libpango-1.0-0
libpangocairo-1.0-0
libstdc++6
libx11-6
libx11-xcb1
libxcb1
libxcomposite1
libxcursor1
libxdamage1
libxext6
libxfixes3
libxi6
libxrandr2
libxrender1
libxss1
libxtst6
xdg-utils
这些软件包可能因您使用的操作系统和发行版而异。您可以使用操作系统的软件包管理器(例如 apt、yum、brew 等)来安装这些软件包。
检查您的系统是否启用了沙盒功能。您可以执行以下命令查看系统是否支持沙盒:
sysctl kernel.unprivileged_userns_clone
如果命令的输出是 kernel.unprivileged_userns_clone = 1,则表示沙盒功能已启用。如果输出是 kernel.unprivileged_userns_clone = 0 或者找不到该命令,则表示沙盒功能未启用。
如果沙盒功能未启用,您可以尝试启用它。请注意,启用沙盒功能可能需要管理员权限。执行以下命令以启用沙盒功能:
sudo sysctl -w kernel.unprivileged_userns_clone=1
然后重新运行您的代码,查看问题是否解决。
如果上述解决方案仍然无法解决问题,您可能需要更进一步的调查和诊断。请查阅相关文档、寻求支持或咨询系统管理员以获取进一步的帮助。

安装了依赖后,还是报错No usable sandbox! Update your kernel or see

后面再bing上搜:centos puppeteer开启 sandbox

e564080944-qq-jie-tu20231126164413_normal.jpg

第一个回答就是下面,特别是里面提到

sudo mv chrome_sandbox chrome-sandboxsudo chown root chrome-sandboxsudo chmod 4755 chrome-sandbox用这个办法解决了

0485ae2f49-qq-jie-tu20231126165516_normal.jpg

b66883767a-qq-jie-tu20231126164723_normal.jpg

How to Setup Puppeteer in CentOS 7

Setup Puppeteer In CentOS 7 is easy but gets tricky in Linux distributions. Few weeks back we have Completed a project using puppeteer . Now the Question was Where Should we deploy ?

Our code is written in Windows and we wanted to move code to Production . Now we have CentOS 7 in prod . We were struggling to run Puppeteer on Prod machine .

Learn Puppeteer and Nodejs and lessons here

Have a look at Environment details we have used to deploy a puppeteer .

Environment Details:–

Have a look at Steps we Have Followed to Deploy A puppeteer backed application in CentOS 7 ...

立即注册
分享的网址网站均收集自搜索引擎以及互联网,非查问网运营,查问网并没有提供其服务,请勿利用其做侵权以及违规行为。

更新于:2023-11-26 17:18:19
    您需要登录后才可以评论。 立即注册

    PHP 爬虫体验(三) - 使用PHP + puppeteer爬取js动态渲染的页面内容 spatie/browsershot封装

    之前写的两篇爬虫体验基本上涵盖了一般的Html页面提取场景,但是有些时候,如果目标页面不是纯静态的页面,而是使用js动态渲染的页面(比如one),之前的爬虫就不好使了,这种时候就要借助一些其他工具来进行实现。

    一般爬取动态页面的思路是通过软件模拟浏览器行为获取到渲染后的页面镜像,然后再对渲染后的页面进行分析,常用的工具有selenium,phantomJs,puppeteer等,通过对项目维护程度、对PHP友好度的对比,我选用的是puppeteer。

    根据官方介绍,谷歌在2017年开发了自家Chrome浏览器的Headless特性,puppeteer便是这个时候诞生的,它的原理是通过调用Chrome DevTools开放的接口与Chrome通信,将浏览器开放接口进行封装,方便用户调用,可以很容易地实现浏览器行为的模拟。

    尝试一下puppeteer,安装起来其实非常简单:

    npm i puppeteer

    根据官方API写了example.js进行测试:...

    立即注册
    更新于:2023-11-26 17:01:55
    相关内容

    阿里云香港轻量服务器LNMP搭建yum安装Centos Stream8全流程

    Centos7利用yum安装apache+mysql8+php7 一篇搞定!

    Centos 服务器搭建(Centos8服务器搭建遇到的各种问题及解决方法)

    Centos8 更新yum或安装软件时提示 Failed to download metadata for repo...

    从CentOS 8到CentOS Stream,到底发生什么事了?

    CentOS8出现“ Error: Failed to download metadata for repo ‘AppStrea...

    如何将CentOS 8转换为CentOS Stream(202205实测有效)

    Centos中查看nginx、apache、php、mysql配置文件路径

    Centos7 安装Apache过程详解

    推荐内容

    分享几个好用的bt搜索bt资源下载网址网站

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享

    全网最新bt磁力搜索引擎bt资源bt网站网址分享

    人气美女女优百度指数排行榜(波多野结衣,苍井空,三上悠亚,深田咏美,桥本有菜,北条...

    最强人造人深田咏美,业界的社交女王

    人生起起落落的三上悠亚,成名前的清纯风,怎么搭配出来的?

    业内第一大长腿,桥本有菜的腿究竟有多长

    波多野结衣,岛国业界著作最多的超级劳模

    日本AV界NO.1,苍井空是多少宅男的疯狂?

    美女女优视频混剪 This Girl-Laza Morgan

    怎样使用V2Ray代理和SSTap玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩...

    sstap游戏代理教程 从此玩如魔兽世界/绝地求生/LOL台服/战地3/黑色沙漠/彩虹六...

    影视电影剧集动漫综艺bt资源在线播放网址网站推荐分享