要获取网页的CSS,可以使用PHP的cURL库来下载网页的源代码,然后使用正则表达式或DOM解析器来提取其中的CSS样式。
下面是一个使用cURL和正则表达式的示例代码:
<?php
// 目标网页的URL
$url = 'http://example.com';
// 初始化cURL
$curl = curl_init();
// 设置cURL选项
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
// 执行cURL请求
$response = curl_exec($curl);
// 关闭cURL
curl_close($curl);
// 使用正则表达式匹配CSS样式
$pattern = '/<link.*?rel="stylesheet".*?href="(.*?)".*?>/i';
preg_match_all($pattern, $response, $matches);
// 输出匹配到的CSS链接
foreach ($matches[1] as $cssLink) {
echo $cssLink . "\n";
}
?>
上述代码首先使用cURL库下载了目标网页的源代码,然后使用正则表达式匹配其中的CSS链接。你可以根据实际情况修改正则表达式来适应不同的网页结构。
另外,你也可以使用PHP的DOM解析器来解析HTML文档并提取CSS样式。下面是一个使用DOM解析器的示例代码:
<?php
// 目标网页的URL
$url = 'http://example.com';
// 创建DOM解析器对象
$dom = new DOMDocument();
// 忽略HTML中的错误
libxml_use_internal_errors(true);
// 加载HTML源代码
$dom->loadHTMLFile($url);
// 获取所有的link标签
$links = $dom->getElementsByTagName('link');
// 遍历link标签,提取CSS链接
foreach ($links as $link) {
if ($link->getAttribute('rel') === 'stylesheet') {
echo $link->getAttribute('href') . "\n";
}
}
?>
上述代码使用DOM解析器加载目标网页的HTML源代码,并遍历所有的link标签,提取其中rel属性为"stylesheet"的CSS链接。
无论是使用正则表达式还是DOM解析器,你都可以根据需要进一步处理CSS链接,比如下载CSS文件或提取CSS样式内容。
上一篇:php 接受上传的文件
下一篇:php获取星期一
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站