应用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.读者可任意复制,转载时要注明转载
应用PHP正则表达式提取某网站中最新发表的代理ip地址相关推荐
- Php正则表达式的应用———提取某网站中最新发表的代理ip地址
Php正则表达式的应用---提取某网站中最新发表的代理ip地址 正则表达式的功能是非常强大的,主要三方面应用.1.判断指定的字符串是否具有指定的格式 2.查找具有指定格式的字符串 3. 将具有指定格式 ...
- 在python中,用正则表达式提取多层括号中最外层括号包含的内容
提取多层括号中最外层括号包含的内容有几种方式,那么用正则表达式该怎么实现呢? 在python中,用正则表达式提取多层括号中最外层括号包含的内容 比如有一个字符串 : 学习python中有什么不懂的地方 ...
- java 正则提取邮箱_如何用正则表达式提取一个网站里面的所有邮箱地址?
展开全部 用正则表达式提取一个网站里面的所有邮箱地址e68a8462616964757a686964616f31333337616565 import java.io.BufferedReader; ...
- 全网最新Nginx禁止国内IP地址访问网站
全网最新Nginx禁止国内IP地址访问网站 文章目录 全网最新Nginx禁止国内IP地址访问网站 1.服务器安装依赖 2.创建文件地址并下载所需服务 3.安装libmaxminddb 4.解压并且修改 ...
- 如何在Node.js中获取本机本地IP地址
最近在做Cloud related的项目时,遇到一个问题,就是如何在Node.js中获取本机的IP地址.Node.js提供的API中,只能获取本机的hostname. os = require('os ...
- Windows10中如何使用ADSL固定IP地址连接因特网
Windows10中如何使用ADSL固定IP地址连接因特网 ADSL的网络连接组成包括含ADSL的电话线路,分离器,RJ-11电话线,ADSL调制解调器以及RJ-45网线.其中含ADSL的电话线路会通 ...
- 网站中PV、UV、IP的区别
网站推广需要一个网站访问统计工具,常用的统计工具有百度统计.51la.量子恒道统计等.网站访问量常用的指标为PV.UV.IP.那么什么是PV.UV和IP,PV.UV.IP的区别是什么? 首先来看看ip ...
- java中获取当前服务器的Ip地址
1.tomcat是一款免费的开源Web服务器,如果部署在本地,那么对应的那么为localhost,对应地址为127.0.0.1. 例子:可以通过http://localhost:8080/项目root ...
- linux ssh ip地址命令,关于Linux:在ssh会话中查找客户机的IP地址
我有一个脚本,由使用ssh登录到服务器的人运行. 有没有办法自动找出用户连接的IP地址? 当然,我可以问用户(这是一个程序员的工具,所以没问题),但如果我刚刚发现的话,会更酷. 建议转到服务器故障,不 ...
最新文章
- linux sudo命令详解
- 阅读准备-构建redis容器
- 数字经济时代,险企如何构建数字化经营体系实现突围?
- gorilla/mux 的学习
- python学习笔记(七)函数
- 选择排序--Selection sort
- 跟小静学MVC3[03]--相关语法特性小补习
- linux内核源码分析plat-form 分析
- java kafka 开发,Kafka JAVA API开发-基础案例
- arduino液位传感器_「雕爷学编程」Arduino动手做(24)——水位传感器模块
- 无水印的html5制作软件,ScreenToGif-开源、简单、无水印的gif动图制作软件
- ros系统能用c语言编程,ROS操作系统学习(十一)参数的使用与编程方法
- 服务器安装找不到lsi驱动,IBM 服务器 SAS Raid LSI Windows2008 硬盘 驱动
- 词法分析之LED文件批量生成
- winhex先Add再XOR后的数据恢复
- springboot 启动banner 打印 佛祖保佑
- mac电脑用计算机名共享打印机,MAC与Windows7共享打印机的设置方法
- ios多人协作工具有哪些?支持多人同步在线使用的协同办公软件
- IOS 开发 iPhone屏幕尺寸、分辨率及适配
- mysql 家谱树查询_GitHub - chenwei/FamilyTreeView: 家谱树绘制Demo
热门文章
- About@fant-face
- @[666_C++牛人放出超屌代码]3d超级枪战小游戏
- scss中的@each 指令
- 实现手机端富文本编辑器---QuillEditors实现
- 视频教程-Linux 云计算架构师视频课程(集群、存储、调优)-Linux
- 第一次写线段树,以杭电一道题为例 张煊的金箍棒(2)
- 惠普计算机开机半花屏,hp笔记本花屏原因及解决办法【图文教程】
- CPU占用率高怎么办?正确解决方法在这里!
- GPT-4发布!ChatGPT大升级!AI画图牛逼
- 【满分】【华为OD机试真题2023 JAVAJS】字符串解密