脚本从网站中提取并在excel中创建单词列表

时间:2013-05-06 18:50:15

标签: php database excel web-scraping

我想通过美国州(阿拉巴马州,加利福尼亚州,纽约州密西西比州田纳西州,北卡罗来纳州,南卡罗来纳州和佐治亚州)和以下类型列出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 btw转移?

由于

按流派划分的标签:http://www.allrecordlabels.com/db/genres/

陈述http://www.allrecordlabels.com/db/state/

州的标签:

阿拉巴马州http://www.allrecordlabels.com/db/state/AL.html

Mississipi 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

纽约http://www.allrecordlabels.com/db/state/NY.html

加利福尼亚http://www.allrecordlabels.com/db/state/CA.html

0 个答案:

没有答案