问题描述
我在一个不使用 Symfony 的 PHP 项目中使用 Symfony Panther 进行网络抓取(不是测试)。我是通过 Composer 安装的。每次我需要抓取用户提交的链接时,我都会启动一个新的 Chrome 浏览器。
$client = Symfony\Component\Panther\Client::createChromeClient('/usr/bin/chromedriver');
$client->request('GET',$url);
$crawler = $client->waitFor('body');
为每个提交的 $url
启动一个新的 Chrome 浏览器很慢并且占用大量资源,所以我想让 Chrome 客户端在端口 9515 上运行,然后每个用户的 $url
请求可以连接到相同的实例。基于 Github 上的 some 用户 comments,这听起来是一个合理的方法:
- 在 Linux 服务器上启动 Chrome 实例,在端口 9515 上运行
- 使每个 url 请求连接到该实例。
我在 CRON 作业的 PHP 脚本中放置了第一行,即使用 createChromeClient,但它从未启动 chrome 客户端,我也没有收到任何错误。任何想法如何实现这一目标?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)