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开发的nosql数据库CodernityDB介绍和使用实例
Oct 23 Python
在Python中使用sort()方法进行排序的简单教程
May 21 Python
dataframe设置两个条件取值的实例
Apr 12 Python
Python判断中文字符串是否相等的实例
Jul 06 Python
Django中使用第三方登录的示例代码
Aug 20 Python
Python中文编码知识点
Feb 18 Python
numpy.meshgrid()理解(小结)
Aug 01 Python
python elasticsearch环境搭建详解
Sep 02 Python
python使用HTMLTestRunner导出饼图分析报告的方法
Dec 30 Python
通过实例学习Python Excel操作
Jan 06 Python
Python Tricks 使用 pywinrm 远程控制 Windows 主机的方法
Jul 21 Python
详解python模块pychartdir安装及导入问题
Oct 22 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
分页显示Oracle数据库记录的类之一
2006/10/09 PHP
ajax 的post方法实例(带循环)
2011/07/04 PHP
javascript各种复制代码收集
2008/09/20 Javascript
Prototype 学习 Prototype对象
2009/07/12 Javascript
js 实现无缝滚动 兼容IE和FF
2009/07/15 Javascript
Jquery判断IE6等浏览器的代码
2011/04/05 Javascript
禁止ajax缓存获取程序最新数据的方法
2013/11/19 Javascript
javascript跨域的4种方法和原理详解
2014/04/08 Javascript
JS动态增删表格行的方法
2016/03/03 Javascript
JS使用单链表统计英语单词出现次数
2016/06/16 Javascript
Javascript基础回顾之(二) js作用域
2017/01/31 Javascript
详解angular如何调用HTML字符串的方法
2018/06/30 Javascript
在小程序中使用Echart图表的示例代码
2018/08/02 Javascript
jQuery轻量级表单模型验证插件
2018/10/15 jQuery
微信小程序实现底部导航
2018/11/05 Javascript
JS根据Unix时间戳显示发布时间是多久前【项目实测】
2019/07/10 Javascript
node实现简单的增删改查接口实例代码
2019/08/22 Javascript
vue 根据选择条件显示指定参数的例子
2019/11/09 Javascript
利用 JavaScript 实现并发控制的示例代码
2020/12/31 Javascript
Python中实现对list做减法操作介绍
2015/01/09 Python
理解Python中函数的参数
2015/04/27 Python
Python微信企业号开发之回调模式接收微信端客户端发送消息及被动返回消息示例
2017/08/21 Python
在Python 2.7即将停止支持时,我们为你带来了一份python 3.x迁移指南
2018/01/30 Python
Python 判断 有向图 是否有环的实例讲解
2018/02/01 Python
django 捕获异常和日志系统过程详解
2019/07/18 Python
django 外键创建注意事项说明
2020/05/20 Python
python中wheel的用法整理
2020/06/15 Python
Python docutils文档编译过程方法解析
2020/06/23 Python
娇韵诗俄罗斯官方网站:Clarins俄罗斯
2020/10/03 全球购物
Groupon西班牙官方网站:在线优惠券和交易,节省高达70%
2021/03/13 全球购物
CK澳大利亚官网:Calvin Klein澳大利亚
2020/12/12 全球购物
2015年度企业工作总结
2015/05/21 职场文书
2019通用版新员工入职培训方案!
2019/07/11 职场文书
当你找不到方向的时候,不妨读读刘备的一生
2019/08/05 职场文书
java版 简单三子棋游戏
2022/05/04 Java/Android
3050和2060哪个好 性能差多少 差距有多大 谁更有性价比
2022/06/17 数码科技