chrome-php/chrome
Chrome PHP lets you control headless Chrome or Chromium from PHP, synchronously or asynchronously. Open pages, navigate, run JavaScript, take screenshots, generate PDFs, and emulate mouse and keyboard input with a simple, IDE-friendly API. Requires PHP 7.4–8.5 and Chrome/Chromium 65+.
Page::getHtmlKeyboard::typeText()--crash-dumps-dir optionsetHtmlsetHtml() isn't respectedDom classResponseReader classwaitForStartup if dev tools failed to startsendCloseMessageAutoDiscovercommand to guess the chrome executable in LinuxMouse::findElement()Browser::getPages methodPage::waitUntilContainsElement() methodPage::setHtml() methodSelectorMouse::findElement() methodNode::querySelector from returning nodeId 0--no-proxy-server and --proxy-bypass-listPage::getHtmlNode::sendFiles methodKeyboard::typeText with multibyte stringsMouse::find() after cursor has movedpsr/log 2 and 3--disable-default-apps and --disable-extensions by defaultPagePdf class to improve validationPageUtils helper classes to the public APINode::getPosition()referrer, referrerPolicy and transitionType in Page::navigate()Page::authenticate and Page::clearAuthentication methods for HTTP authentication challengesAbstractBinaryInput::saveToStream methodPage::screenshotElement()Mouse::move()Mouse::getPosition()chrome-php/wrench ^1.9CHROME_NO_SANDBOX env varPageScreenshot::getExceptionCssSelectorsession=false in Page::setCookiesAbstractBinaryInput::getRawBinaryAbstractBinaryInput::getRawBinary methodCookie implement IteratorAggregateXPathSelectorAdd Node::setHTML methodPage::setScriptExecution methodPage::waitForElementexcludedSwitches optionwebp format and optimizeForSpeed option in Page::screenshotchrome-php/wrench--font-render-hinting=none in headless modeWrench::connect() return valueBrowser::closePage::pdfBrowser::closeBrowserFactory is now automaticPage::getFullPageClipgetBase64headerTemplate and footerTempalte for Page::pdfscale for Page::pdfgetChromeVersion functionPage::getHtmlsetDownloadPathcaptureBeyondViewportHow can I help you explore Laravel packages today?