PHP实现简单爬虫的方法
创始人
2024-05-30 00:42:15
0

PHP实现简单爬虫的方法,php实现爬虫

本文实例讲述了PHP实现简单爬虫的方法。分享给大家供大家参考。具体如下:

\'\"\ ]*).*?>/';

result=pregmatchall(result = preg_match_all(result=pregm​atcha​ll(reg_tag_a, $web_content, matchresult);if(match_result); if (matchr​esult);if(result) {
return $match_result[1];
}
}
/**

  • 修正相对路径
  • @param string $base_url
  • @param array $url_list
  • @return array
    /
    function _reviseUrl($base_url, $url_list) {
    urlinfo=parseurl(url_info = parse_url(urli​nfo=parseu​rl(base_url);
    $base_url = urlinfo["scheme"].′://′;if(url_info["scheme"] . '://'; if (urli​nfo["scheme"].′://′;if(url_info[“user”] && $url_info[“pass”]) {
    $base_url .= $url_info[“user”] . “:” . $url_info[“pass”] . “@”;
    }
    $base_url .= urlinfo["host"];if(url_info["host"]; if (urli​nfo["host"];if(url_info[“port”]) {
    $base_url .= “:” . $url_info[“port”];
    }
    $base_url .= urlinfo["path"];printr(url_info["path"]; print_r(urli​nfo["path"];printr​(base_url);
    if (is_array(KaTeX parse error: Expected '}', got 'EOF' at end of input: …)) { foreach (url_list as $url_item) {
    if (preg_match(‘/^http/’, $url_item)) {
    // 已经是完整的url
    $result[] = $url_item;
    } else {
    // 不完整的url
    $real_url = $base_url . ‘/’ . $url_item;
    $result[] = $real_url;
    }
    }
    return $result;
    } else {
    return;
    }
    }
    /
    *
  • 爬虫
  • @param string $url
  • @return array
    /
    function crawler($url) {
    content=getUrlContent(content = _getUrlContent(content=g​etUrlContent(url);
    if ($content) {
    urllist=reviseUrl(url_list = _reviseUrl(urll​ist=r​eviseUrl(url, _filterUrl(content));if(content)); if (content));if(url_list) {
    return $url_list;
    } else {
    return ;
    }
    } else {
    return ;
    }
    }
    /
    *
  • 测试用主程序
    */
    function main() {
    $current_url = “http://hao123.com/”; //初始url
    $fp_puts = fopen(“url.txt”, “ab”); //记录url列表
    $fp_gets = fopen(“url.txt”, “r”); //保存url列表
    do {
    resulturlarr=crawler(result_url_arr = crawler(resultu​rla​rr=crawler(current_url);
    if (KaTeX parse error: Expected '}', got 'EOF' at end of input: … { foreach (result_url_arr as KaTeX parse error: Expected '}', got 'EOF' at end of input: …) { fputs(fp_puts, KaTeX parse error: Undefined control sequence: \n at position 10: url . "\r\̲n̲"); } } }…current_url = fgets($fp_gets, 1024)); //不断获得url
    }
    main();
    ?>

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...