以下为知识DOC为大家进行整理的相关内容,希望对大家有所帮助!
如今网络上资源很多,站长为了留住用户,一般都有IP限制,每天只能看多少文章下载多少资源,无疑对用户体验非常的不好,为了解决用户想一次看个够却又做不到的问题python获取本机ip地址,写下这篇文章。
很多有点网络经验的朋友都知道,在IP被限制时我们都会采用代理IP的方式进行访问。网络上分享代理IP的网站也特别多,如果你需要大量的IP,手动去复制是非常麻烦的,下面就教大家做一个简单的自动获取IP的服务。
说起网络爬虫大家第一反应就是,但笔者不会这门语言,就用比较常用的PHP来写吧,当然如果大量的话就不建议使用PHP,毕竟它的能力有限。
首先要知道爬虫就是不断的访问你的网页,然后通过各种解析手段取得所需要的内容。我们需要的代理IP只需要IP地址和端口就可以了,其它的所在位置、隐匿性等等不需要就不要抓了。下面是核心代码:
设置PHP运行状态为后台运行。
(); // 后台运行
(0); // 取消脚本运行时间的超时上限
$=60*5;// 每隔5分钟运行,这个间隔时间是可以随着 需要进行修改
do{
for($n=1;$n{ //抓取 这个网站上的IP内容
$ = qwbzj((“”.$n.”.html”),”验证时间”,””);
$ = ‘/d+.d+.d+.d+
d+/’;
($, $, $);
for ($i= 0;$i< count($); $i++)
{
for($j=0;$j{ $str= $[$i][$j]; $=(“
“,”:” ,$str );
// echo (“
“,”:” ,$str ).”
“;
if(($)==1)
{
// echo “成功”;
}else{
// echo “失败”;
} //($);
} } } sleep($);
// 休眠5分钟
}while(true);
获取网页源码。使用()函数来获取网页源码python获取本机ip地址,再配合字符串构造一个取文本中间的方法,用来剔除网页中不需要的部分,最后用上面的正则匹配进行匹配。
/** *取文本中间 * */
qwbzj($str, $, $)
{ $left = ($str, $);
//echo ‘左边:’.$left;
$right = ($str, $,$left);
//echo ‘
右边:’.$right;
if($left < 0 or $right < $left) '';
($str, $left + ($), $right-$left-($));
}
代码中使用了取消浏览器断开即停止程序运行,启动后即使退出浏览器,程序一样会在后台运行。写完后需要在浏览器中访问一次进行启动,访问之后即可关闭退出,不退出你就只能看到它一直在转圈。程序5分钟进行一次抓取,抓取的内容经过重复验证后插入到数据表中。效果如下:
文中代码出现的MySQL语句并没有严格限制python获取本机ip地址,在实际应用中请对MySQL语句的内容进行检查,以免出现注入漏洞。抓取网络中的IP地址到此就结束了,关于代理IP的验证内容太多,下次再讲吧!欢迎关注,收藏。
本文地址: https://www.zhishidoc.com/18117.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 859089669@qq.com 举报,一经查实,本站将立刻删除。