PHP:获取HTML网页的所有CSS文件 [英] PHP: Get all CSS files of an HTML web page
问题描述
我正在尝试从URL获取html文件的所有 CSS 文件。
I'm trying to get all CSS files of an html file from URL.
我知道,如果我想获取 HTML 代码很容易-只需使用PHP函数- file_get_contents
。
I know that if I want to get the HTML code it is easy - just using PHP function - file_get_contents
.
问题是-如果我可以轻松地在 HTML 的URL中搜索并从中获取所有相关的 CSS 文件的文件或内容?
The question is - if I could search easily inside an a URL of HTML and get from there the files or content of all related CSS files?
注意-我想构建一个用于获取大量CSS文件的引擎,这就是为什么仅阅读源代码是不够的。 p>
Note - I want to build an engine for getting a lot of CSS files, this is why just reading the source is not enough..
谢谢
推荐答案
尝试使用 http://simplehtmldom.sourceforge.net/ 进行HTML解析。
You could try using http://simplehtmldom.sourceforge.net/ for HTML parsing.
require_once 'SimpleHtmlDom/simple_html_dom.php';
$url = 'www.website-to-scan.com';
$website = file_get_html($url);
// You might need to tweak the selector based on the website you are scanning
// Example: some websites don't set the rel attribute
// others might use less instead of css
//
// Some other options:
// link[href] - Any link with a href attribute (might get favicons and other resources but should catch all the css files)
// link[href="*.css*"] - Might miss files that aren't .css extension but return valid css (e.g.: .less, .php, etc)
// link[type="text/css"] - Might miss stylesheets without this attribute set
foreach ($website->find('link[rel="stylesheet"]') as $stylesheet)
{
$stylesheet_url = $stylesheet->href;
// Do something with the URL
}
这篇关于PHP:获取HTML网页的所有CSS文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!