用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\-_\.][email protected][a-z0-9]+\.[a-z0-9\-_\.]+)/";
    preg_match_all($pattern,$str,$emailArr);
    return $emailArr[0];
}
?>
时间: 2024-10-01 07:31:21

用PHP抓取百度贴吧邮箱数据的相关文章

python抓取百度彩票的双色球数据

最近在学习<机器学习实战>这本书,在学习的过程中不免要自己去实践,写些练习.这写练习的第一步就需要收集数据,所以为了写好自己的练习程序,我得先学会收集一些网络数据.了解到用python抓取网页数据的一些方法后,我就根据别人的demo,自己实践了一下,学着从百度彩票网站上抓取双色球的历史数据.以下我就介绍一下自己的小程序. 大致思路如下 找到相关url和其参数 找出页面上你要抓取的数据的位置,也就是说这个数据在那些标签下 将每页中学要的数据取下来按一定格式存放在自己本地 需要的环境: pytho

Python3抓取百度贴吧图片

我抓取的地址是http://tieba.baidu.com/p/3125473879?pn=2,这个帖子共有82页左右,下面的代码主要抓取82页的所有图片,具体代码如下: """抓取百度贴吧图片""" #导入模块 import re import urllib from urllib.request import urlopen,urlretrieve #获取抓取页面的源代码 def getHtml(url):     page = urlope

php抓取百度快照、百度收录、百度热词程序代码

<?/*抓取百度收录代码*/function baidu($s){ $baidu="http://www.baidu.com/s?wd=site%3A".$s; $site=file_get_contents($baidu); //$site=iconv("gb2312", "UTF-8", $site); ereg("找到相关网页(.*)篇,", $site,$count); $count=str_replace(&q

爬虫抓取百度贴吧帖子内容

上篇文章已经介绍了抓取糗事百科的段子,这篇文章来抓取百度贴吧帖子内容,涉及到urllib,urllib2,re等模块. 代码实现功能: 1.获取某一个帖子的标题 2.获取帖子回复的所有页数,以及每一页的内容 3.可以只获取楼主的回复(使用数字1声明),或者所有回复(使用数字0声明) 直接使用oop编程的方式编写代码: 代码如下: #!/usr/bin/env python #coding:utf8 import urllib import urllib2 import re #处理页面标签类 c

C#.Net使用正则表达式抓取百度百家文章列表

工作之余,学习了一下正则表达式,鉴于实践是检验真理的唯一标准,于是便写了一个利用正则表达式抓取百度百家文章的例子,具体过程请看下面源码: 一:获取百度百家网页内容 1 public List<string[]> GetUrl() 2 { 3 try 4 { 5 string url = "http://baijia.baidu.com/"; 6 WebRequest webRequest = WebRequest.Create(url); 7 WebResponse web

一个用php抓取网页中电子邮箱的实例

原文出自: http://outofmemory.cn/code-snippet/36020/php-how-zhuaqu-wangye-youxiangdizhi-code php如何抓取网页中邮箱地址,下面我就给大家分享一个用php抓取网页中电子邮箱的实例. 原文来自: www.pc100.net <?php /** desc:采集网页中的邮箱的代码 link:www.pc100.net date:2013/2/24 */ $url='http://www.pc100.net'; //要采集

HDOJ Guess the number 3337【神题-抓取杭电后台输出数据】

Guess the number Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 7077    Accepted Submission(s): 1626 Problem Description AekdyCoin is the most powerful boy in the group ACM_DIY, whose signatur

Hawk: 20分钟无编程抓取大众点评17万数据

1. 主角出场:Hawk介绍 Hawk是沙漠之鹰开发的一款数据抓取和清洗工具,目前已经在Github开源.详细介绍可参考:http://www.cnblogs.com/buptzym/p/5454190.html,强烈建议先读这篇文章,该文介绍了详细原理和抓取链家二手房的攻略,以此为基础,才能较好的理解整个操作. 本文将讲解通过本软件,获取大众点评的所有美食数据,可选择任一城市,也可以很方便地修改成获取其他生活门类信息的爬虫. 本文将省略原理,一步步地介绍如何在20分钟内完成爬虫的设计,基本不需

使用burpsuite等代理工具抓取docker容器中的数据包

使用burpsuite等代理工具抓取docker容器中的数据包,下面是详细的教程. 以docker中的某个漏洞平台(bwapp)为例,展示如何抓包. 1.首先使用docker下载bwapp: # docker pull raesene/bwapp 2.然后运行bwapp (使用命令   --env HTTP_PROXY="http://192.168.43.14:8080"   来进行代理设置,这里设置的是burpsuite中的ip地址以及端口) # docker run -d --n