PHP网页抓取之抓取百度贴吧邮箱数据代码分享


Posted in Python onApril 13, 2016

百度贴吧大家都经常逛,去逛百度贴吧的时候,经常会看到楼主分享一些资源,要求留下邮箱,楼主才给发。

对于一个热门的帖子,留下的邮箱数量是非常多的,楼主需要一个一个的去复制那些回复的邮箱,然后再粘贴发送邮件,不是被折磨死就是被累死。无聊至极写了一个抓取百度贴吧邮箱数据的程序,需要的拿走。

程序实现了一键抓取帖子全部邮箱和分页抓取邮箱两个功能,界面懒得做了,效果如下:

PHP网页抓取之抓取百度贴吧邮箱数据代码分享

老规矩,直接贴源码

<?php
$url2="";
$page="";
if($_GET['url2']==""){
$url2="http://tieba.baidu.com/p/2314539885?pn=1";
}else{
$url2=$_GET['url2'];
}

if($_GET['page']==""){
$page="1";
}else{
$page=$_GET['page'];
}
?>
<form action="" method="get">
<input type="hidden" value="getAll" name="type" />
<table>
<tr>
<td>帖子链接:</td><td><input type="text" name="url" value="http://tieba.baidu.com/p/2314539885" style="width:300px;" /></td>
</tr>
<tr>
<td>总页数:</td><td><input type="text" name="page" style="width:300px;" value="<?php echo $page;?>" /></td>
</tr>
<tr>
<td colspan=2><input type="submit" value="抓取全部邮箱数据" /></td>
</tr>
</table>
</form>

<form action="" method="get">
<input type="hidden" value="getNow" name="type" />
<table>
<tr>
<td>帖子链接:</td><td><input type="text" name="url2" value="<?php echo $url2;?>" style="width:300px;" /></td>
</tr>
<tr>
<td colspan=2><input type="submit" value="抓取当前页面邮箱数据" /></td>
</tr>
</table>
</form>
<?php
if($_GET['type']!=""){
$counts=0;
if($_GET['type']=="getAll"){
$pages=$_GET['page'];
$url = $_GET['url'];
for($i=0;$i<$pages;$i++){
$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_URL, $url);
curl_setopt($ch2, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch2, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch2, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, TRUE);
$texts = curl_exec($ch2);
curl_close($ch2);
$dat=getEmail($texts);
for($j=0;$j<count($dat);$j++){
echo $dat[$j]."<br />";
$counts++;
}
}
}else if($_GET['type']=="getNow"){
$url = $_GET['url2'];
$ch2 = curl_init();
curl_setopt($ch2, CURLOPT_URL, $url);
curl_setopt($ch2, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch2, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch2, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch2, CURLOPT_RETURNTRANSFER, TRUE);
$texts = curl_exec($ch2);
curl_close($ch2);
$dat=getEmail($texts);
for($i=0;$i<count($dat);$i++){
echo $dat[$i]."<br />";
$counts++;
}
}
echo '<h2>共采集到数据:'.$counts.'条</h2>';
}
function getEmail($str){
$pattern = "/([a-z0-9\-_\.]+@[a-z0-9]+\.[a-z0-9\-_\.]+)/"; 
preg_match_all($pattern,$str,$emailArr); 
return $emailArr[0]; 
}
?>
Python 相关文章推荐
Python深入学习之特殊方法与多范式
Aug 31 Python
Python实现基于HTTP文件传输实例
Nov 08 Python
python中requests使用代理proxies方法介绍
Oct 25 Python
python爬虫使用cookie登录详解
Dec 27 Python
Django基础知识 web框架的本质详解
Jul 18 Python
Python 实现一个手机号码获取妹子名字的功能
Sep 25 Python
python实现输出一个序列的所有子序列示例
Nov 18 Python
如何用OpenCV -python3实现视频物体追踪
Dec 04 Python
tensorflow实现训练变量checkpoint的保存与读取
Feb 10 Python
python如何编写win程序
Jun 08 Python
python批量处理多DNS多域名的nslookup解析实现
Jun 28 Python
django filter过滤器实现显示某个类型指定字段不同值方式
Jul 16 Python
python 实时遍历日志文件
Apr 12 #Python
python字符串连接方法分析
Apr 12 #Python
python去除文件中空格、Tab及回车的方法
Apr 12 #Python
Python脚本实现虾米网签到功能
Apr 12 #Python
Python脚本简单实现打开默认浏览器登录人人和打开QQ的方法
Apr 12 #Python
用Python写冒泡排序代码
Apr 12 #Python
详解Python的Django框架中manage命令的使用与扩展
Apr 11 #Python
You might like
PHP 和 MySQL 开发的 8 个技巧
2007/01/02 PHP
PHP 5.3.0 安装分析心得
2009/08/07 PHP
PHP新手入门学习方法
2011/05/08 PHP
Win下如何安装PHP的APC拓展
2013/08/07 PHP
ThinkPHP模板Switch标签用法示例
2014/06/30 PHP
php实现word转html的方法
2016/01/22 PHP
Laravel实现表单提交
2017/05/07 PHP
PHP中PDO事务处理操作示例
2018/05/02 PHP
JavaScript高级程序设计 客户端存储学习笔记
2011/09/10 Javascript
jquery中load方法的用法及注意事项说明
2014/02/22 Javascript
JavaScript检查某个function是否是原生代码的方法
2014/08/20 Javascript
Javscript调用iframe框架页面中函数的方法
2014/11/01 Javascript
Jquery跨域获得Json的简单实例
2016/05/18 Javascript
原生JS实现图片轮播与淡入效果的简单实例
2016/08/21 Javascript
微信小程序 触控事件详细介绍
2016/10/17 Javascript
基于bootstrap的文件上传控件bootstrap fileinput
2016/12/23 Javascript
AngularJS实现select的ng-options功能示例
2017/07/12 Javascript
浅谈JavaScript中的属性:如何遍历属性
2017/09/14 Javascript
vue 实现全选全不选的示例代码
2018/03/29 Javascript
Layer.js实现表格溢出内容省略号显示,悬停显示全部的方法
2019/09/16 Javascript
关于vue.js中实现方法内某些代码延时执行
2019/11/14 Javascript
在Django中创建第一个静态视图
2015/07/15 Python
python实现在pandas.DataFrame添加一行
2018/04/04 Python
python 实现selenium断言和验证的方法
2019/02/13 Python
Python中的流程控制详解
2021/02/18 Python
泰国综合购物网站:Lazada泰国
2018/04/09 全球购物
英国川宁茶官方网站:Twinings茶
2019/05/21 全球购物
阿玛尼美妆俄罗斯官网:Giorgio Armani Beauty RU
2020/07/19 全球购物
俄罗斯奢侈品牌衣服、鞋子和配饰的在线商店:INTERMODA
2020/07/17 全球购物
如何通过jdbc调用存储过程
2012/04/19 面试题
优秀毕业大学生推荐信
2013/11/13 职场文书
《美丽的南沙群岛》教学反思
2014/04/27 职场文书
白血病捐款倡议书
2014/05/14 职场文书
民政局副局长民主生活会个人整改措施
2014/10/04 职场文书
群众路线教育实践活动自我剖析思想汇报
2014/10/04 职场文书
小学语文复习计划
2015/01/19 职场文书