以下简短的PHP代码将使你能够从一个标准的WordPress xml网站地图或任何其他遵守网站地图模式的网站地图中提取尿素。
# extract-urls.php
#
# Extract only URLS from a XML sitemap.
# Sitemap schema : https://www.sitemaps.org/protocol.html
if(count($argv) < 2) {
exit("Error: Invalid number of arguments. Specify an input XML file.");
}
$xml_filename = $argv[1];
if (file_exists($xml_filename))
{
$xml = simplexml_load_file($xml_filename);
if($xml->getName() == 'urlset')
{
$children = $xml->children();
foreach($children as $child)
{
if($child->getName() == 'url')
{
echo $child->loc . PHP_EOL;
}
}
}
} else {
exit('Failed to open XML file.');
}
然后你可以从命令行中使用它。这将从示例的 "XML-Sitemap.xml "文件中提取urls,并通过管道传输到一个文本文件。
c:\tools>php extract-urls.php XML-Sitemap.xml > urls.txt