Goutte / Web Scraping - 如何拦截和下载文件

Goutte / Web Scraping - How to intercept and download a file

首先,在此先感谢您的帮助,非常感谢!

我已成功让 Goutte 进行身份验证,点击 URL,更改 select 字段并单击提交按钮。

页面随后重新加载,并在加载完成后将文件下载到客户端。

如何在 Goutte 中拦截此文件?我已经尽可能多地阅读了 doco,但似乎找不到答案。然后想基本打这个文件,遍历保存到本地

根据文件类型,我想遍历,或者保存在本地

谢谢 :-)

做到这一点并不容易。在我的情况下,我打开文件所在的URL(身份验证后),然后服务器提供文件(作为页面的对象),之后您可以获得页面的内容。

// $url contains the path to the file.
$session->visit($url);
$page = $session->getPage();
$saved = file_put_contents($targetFilePath, $page->getContent());

就我而言,我正在下载 zip 文件。在你的情况下,可能将它保存在一个临时位置,检测类型然后将它移动到任何所需的目录。 希望这有帮助。