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 linecache.getline()读取文件中特定一行的脚本
Sep 06 Python
Python实现子类调用父类的方法
Nov 10 Python
在Python中操作列表之List.append()方法的使用
May 20 Python
Python分治法定义与应用实例详解
Jul 28 Python
Python 获得命令行参数的方法(推荐)
Jan 24 Python
详解Python最长公共子串和最长公共子序列的实现
Jul 07 Python
python 读取文本文件的行数据,文件.splitlines()的方法
Jul 12 Python
python使用thrift教程的方法示例
Mar 21 Python
对Python3中列表乘以某一个数的示例详解
Jul 20 Python
keras中的卷积层&amp;池化层的用法
May 22 Python
pytorch实现查看当前学习率
Jun 24 Python
如何用python清洗文件中的数据
Jun 18 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电台频率大全 - 7 吉林省
2020/03/11 无线电
php set_magic_quotes_runtime() 函数过时解决方法
2010/07/08 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
2013/06/17 PHP
php下Memcached入门实例解析
2015/01/05 PHP
使用PHP生成图片的缩略图的方法
2015/08/18 PHP
Yii调试查看执行SQL语句的方法
2016/07/15 PHP
PHP的mysqli_stmt_init()函数讲解
2019/01/24 PHP
Mac系统下搭建Nginx+php-fpm实例讲解
2020/12/15 PHP
jQuery 学习第七课 扩展jQuery的功能 插件开发
2010/05/17 Javascript
JS中的public和private对象,即static修饰符
2012/01/18 Javascript
jQuery实现HTML5 placeholder效果实例
2014/12/09 Javascript
node.js中的http.response.end方法使用说明
2014/12/14 Javascript
AngularJS中实现动画效果的方法
2016/07/28 Javascript
详解Jquery EasyUI tree 的异步加载(遍历指定文件夹,根据文件夹内的文件生成tree)
2017/02/11 Javascript
vue.js动画中的js钩子函数的实现
2018/07/06 Javascript
Vue中的v-for循环key属性注意事项小结
2018/08/12 Javascript
js实现移动端tab切换时下划线滑动效果
2019/09/08 Javascript
如何利用Fabric自动化你的任务
2016/10/20 Python
python实现壁纸批量下载代码实例
2018/01/25 Python
python实现字符串和字典的转换
2018/09/29 Python
对python的unittest架构公共参数token提取方法详解
2018/12/17 Python
Django 实现外键去除自动添加的后缀‘_id’
2019/11/15 Python
Django利用elasticsearch(搜索引擎)实现搜索功能
2020/11/26 Python
Canvas多边形绘制的实现方法
2019/08/05 HTML / CSS
世界上最大的街头服饰网站:Karmaloop
2017/02/04 全球购物
Argos官网:英国家喻户晓的百货零售连锁商
2017/04/03 全球购物
中医药大学市场营销专业自荐信
2013/09/29 职场文书
行政助理岗位职责
2013/11/10 职场文书
水务局局长岗位职责
2013/11/28 职场文书
学前教育毕业生自荐信范文
2013/12/24 职场文书
玩具公司的创业计划书
2013/12/31 职场文书
宝宝周岁宴答谢词
2014/01/26 职场文书
大学竞选班干部演讲稿
2014/08/21 职场文书
2015年班组建设工作总结
2015/05/13 职场文书
2019企业给员工的慰问信
2019/06/24 职场文书
七年级作文之《我和我的祖国》观后感作文
2019/10/18 职场文书