我想按美国各州(阿拉巴马州、加利福尼亚州、纽约州密西西比州田纳西州、北卡罗来纳州、南卡罗来纳州和乔治亚州)和流派交叉列出 allrecordlabels.com,如下所示:
A1 LABEL NAME / B1 STATE NAME / C1 MUSICAL GENRE(S) (如果你知道如何添加:你可以在一些标签的页面上找到标签的 D1 联系电子邮件)然后按列按字母顺序列出。
如果标签有多种类型,您可以将它们堆叠在同一列中。
这是我们处理的一些代码:
<?php
$labelsData = array();
$stateListPage = file_get_contents('http://www.allrecordlabels.com/db/state/');
preg_match_all('#<li> <a href="([A-Z]+)\.html">([a-zA-Z ]+)</a></li>#',
$stateListPage,
$statePagesURL);
foreach($statePagesURL[1] AS $statePageURL) {
$statePage = file_get_contents('http://www.allrecordlabels.com/db/state/' .
$statePageURL . '.html');
preg_match('#<h2>State ([a-zA-Z ]+)</h2>#', $statePage, $state);
$state = $state[1];
preg_match_all('#<li><a href="https?://.+\.[a-z]{2,5}">([^<]+)</a>#',
$statePage, $labelsFound);
foreach($labelsFound[1] AS $label) {
if(!isset($labelsData[$label]))
$labelsData[$label] = array('state' => $state);
else
$labelsData[$label]['state'] .= ' - ' . $state;
}
}
/*
$genreListPage = file_get_contents('http://www.allrecordlabels.com/db/genres/');
preg_match_all('#<li> <a href="([^\.]).html">([a-zA-Z /-]+)</a></li>#',
$genreListPage, $genrePagesURL);
print_r($labelsData);*/
?>
所有这些信息都在网站上列出并易于访问。你能帮我让这个脚本工作吗,我如何在 excel 中转移?
谢谢
按流派标签:http ://www.allrecordlabels.com/db/genres/
状态http://www.allrecordlabels.com/db/state/
各州标签:
阿拉巴马州http://www.allrecordlabels.com/db/state/AL.html
密西西比州http://www.allrecordlabels.com/db/state/MS.html
田纳西州http://www.allrecordlabels.com/db/state/TN.html
北卡罗来纳州http://www.allrecordlabels.com/db/state/NC.html
南卡罗来纳州http://www.allrecordlabels.com/db/state/SC.html
格鲁吉亚http://www.allrecordlabels.com/db/state/GA.html