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中的WSGI接口
May 11 Python
python脚本设置超时机制系统时间的方法
Feb 21 Python
Tensorflow 自带可视化Tensorboard使用方法(附项目代码)
Feb 10 Python
Python读取英文文件并记录每个单词出现次数后降序输出示例
Jun 28 Python
对python中矩阵相加函数sum()的使用详解
Jan 28 Python
Python的numpy库下的几个小函数的用法(小结)
Jul 12 Python
Python进程的通信Queue、Pipe实例分析
Mar 30 Python
python传到前端的数据,双引号被转义的问题
Apr 03 Python
sklearn线性逻辑回归和非线性逻辑回归的实现
Jun 09 Python
python代数式括号有效性检验示例代码
Oct 04 Python
Pytorch 中的optimizer使用说明
Mar 03 Python
总结Python变量的相关知识
Jun 28 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
什么是调频(FM)、调幅(AM)、短波(SW)、长波(LW)
2021/03/01 无线电
php xml-rpc远程调用
2008/12/19 PHP
PHP取得一个类的属性和方法的实现代码
2011/05/22 PHP
浅析Yii2中GridView常见操作
2016/04/22 PHP
PHP编程实现csv文件导入mysql数据库的方法
2017/04/29 PHP
php+layui数据表格实现数据分页渲染代码
2019/10/26 PHP
用js实现的抽象CSS圆角效果!!
2007/05/03 Javascript
SwfUpload在IE10上不出现上传按钮的解决方法
2013/06/25 Javascript
js特殊字符过滤的示例代码
2014/03/05 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
JavaScript中消除闭包的一般方法介绍
2015/03/16 Javascript
javascript 实现map集合
2015/04/03 Javascript
解析NodeJS异步I/O的实现
2017/04/13 NodeJs
微信小程序实现手指触摸画板
2018/07/09 Javascript
jQuery实现当拉动滚动条到底部加载数据的方法分析
2019/01/24 jQuery
在vue+element ui框架里实现lodash的debounce防抖
2019/11/13 Javascript
Element InputNumber 计数器的实现示例
2020/08/03 Javascript
Vant 中的Toast设置全局的延迟时间操作
2020/11/04 Javascript
浅析python协程相关概念
2018/01/20 Python
对Python中DataFrame按照行遍历的方法
2018/04/08 Python
python中字符串的操作方法大全
2018/06/03 Python
python中加背景音乐如何操作
2020/07/19 Python
python绘制趋势图的示例
2020/09/17 Python
使用jquery实现HTML5响应式导航菜单教程
2014/04/02 HTML / CSS
举例详解HTML5中使用JSON格式提交表单
2015/06/16 HTML / CSS
描述内存分配方式以及它们的区别
2016/10/15 面试题
网络安全方面的面试题
2016/01/07 面试题
四川internet信息高速公路(C#)笔试题
2012/02/29 面试题
优秀学生获奖感言
2014/02/15 职场文书
风险评估实施方案
2014/03/09 职场文书
教师节主持词开场白
2015/05/29 职场文书
力克胡哲观后感
2015/06/10 职场文书
《西门豹》教学反思
2016/02/23 职场文书
浅谈Python数学建模之整数规划
2021/06/23 Python
Javascript之datagrid查询详解
2021/09/15 Javascript
Docker官方工具docker-registry案例演示
2022/04/13 Servers