应用PHP正则表达式提取某网站中最新发表的代理ip地址

Php正则表达式的应用———提取某网站中最新发表的代理 ip 地址

正则表达式的功能是非常强大的,主要三方面应用。1. 判断指定的字符串是否具有指定的格式 

2.查找具有指定格式的字符串

3. 将具有指定格式的字符串替换为另一种格式

 

本文主要利用php 正则表达式来提取网站发表的代理 ip 地址,并转换为指定格式,保存为 txt 文档。然后添加到代理猎手软件中,验证成功,我们就能使用代理 ip 了, O( _ )O~ 。再不怕网友知道你的真实 ip 地址了。增加了安全性,还能恶搞。(注:请勿触犯法律)

本程序选择发表代理ip 地址的网址为: http://www.sooip.cn 、。感谢他们无私的奉献,值得我们表扬,值得我们浏览。

 

Php代码如下:

 

<?php

   /**

   * @ Author:朱南天

   *Date: 2009-06-24

  **/

   $filename="http://www.sooip.cn/Article_search.asp";

   $fileinfo=file_get_contents($filename);

   $fileinfo=strtolower($fileinfo);

   $fileinfo=strstr($fileinfo,"1.<a");

   $infoarr=explode("5.<a",$fileinfo);

   $fileinfo=$infoarr[0];

    if(!preg_match_all('/href="(.*?)"/',$fileinfo,$id))

 {

      preg_match_all('/href=/'(.*?)/'/',$fileinfo,$id);  //获取文章的地址

 }

 $idend=str_replace("http://www.sooip.cn/","",$id[1]); 

/*将获得地址统一,例如获得有的是 http://www.sooip.cn/Article_Show.asp?ArticleID=3478  ,有的是 Article_Show.asp?ArticleID=3478   */

foreach($idend as $i)

  {

 $fileinfonew=file_get_contents('http://www.sooip.cn/'.$i);

 $fileinfonew=str_replace(' ','',$fileinfonew);

 preg_match('/title>(.*)</',$fileinfonew,$filename); 

     //提取网页的标题,作为保存文件的文件名

preg_match_all('//d{1,3}/./d{1,3}/./d{1,3}/./d{1,3}/s{1,}/d+/',$fileinfonew,$ip);

/* 关键所在,匹配 ip 地址及端口  */

$ipnew=preg_replace('//r/n/','',$ip[0]); 

$ipnew=preg_replace('//s{1,}/',':',$ipnew);

//转换为指定格式,形如  xxx.xxx.xxx.xxx :端口  

$strinfo=join("/r/n",$ipnew); //添加 txt 中换行符

$txtfilename=str_replace(array('/','//','|',':','?','<','>','"','*'),"  ",$filename[1]);

/* 

排除 文件名中不容许出现的字符,如 /  /  :  *   ?  ,   <   >  |    

*/  

file_put_contents("$txtfilename.txt",$strinfo);  //写入文件

   }

  

?>

 

 

注:1. 本程序有些依赖网页源代码的格式与内容,若网页有所改变,该程序可能有些问题。

   2.本程序中有些是不是必需的,如提取网页标题作为保存文件文件名。读者可另设简单的名字,简化程序。

    3.读者可任意复制,转载时要注明转载

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值