<?php
dl("simplexml.so");
date_default_timezone_set('PRC');//北京时区
$Btime = microtime(true);
$arrStarName = array("swingbj","donghae861015");
//声明xml文件
$string = <<<XML
<?xml version='1.0' encoding="UTF-8"?>
<statuses>
</statuses>
XML;
$localtime = date('y-m-d H:i:s',strtotime(" -96 hour"));//前一小时
$strlocal = strtotime($localtime);//转化为时间戳
foreach($arrStarName as $v)
{
$newxml = simplexml_load_string($string);
$strUrl = "http://twitter.com/statuses/user_timeline/".$v.".xml";
$strContent = file_get_contents($strUrl);
if ($strContent === false)
{
echo "link error;";
exit;
}
$iNum = file_put_contents("textxml/old_".$v.".xml",$strContent);
//parse xml
$xml = simplexml_load_file("textxml/old_".$v.'.xml');
$k = 0;
foreach($xml->status as $status)
{
$picTag = "http://twitpic.com/";
$iPid = 0;
//处理不同图片服务器的图片twitpic plixi yfrog
if (preg_match("/http\:\/\/twitpic.com/",$status->text))//twitpic图片
{
$iPosion = stripos($status->text,$picTag);
$iPid = substr($status->text,$iPosion+19,6);
$strPicUrl = "http://twitpic.com/show/large/".$iPid;
$strPic = file_get_contents($strPicUrl);
$filename = "images/".$v;
if(!file_exists($filename))
{
mkdir($filename,0777);
}
file_put_contents("images/".$v."/".$iPid.".jpg",$strPic);
}
elseif(preg_match("/http\:\/\/yfrog.com\//",$status->text))//yfrog图片
{
$iNum = stripos($status->text,"http://yfrog.com/");
$iPid = substr($status->text,$iNum+17,6);
$strPicUrl = "http://yfrog.com/".$iPid.":iphone";
$strPic = file_get_contents($strPicUrl);
$filename = "images/".$v;
if(!file_exists($filename))
{
mkdir($filename,0777);
}
file_put_contents("images/".$v."/".$iPid.".jpg",$strPic);
}
elseif(preg_match("/http\:\/\/plixi.com\//",$status->text))//plixi图片
{
$iNum = stripos($status->text,"http://plixi.com/",$status->text);
$iPid = substr($status->text,$iNum+17,7);
$strPicUrl = "http://api.plixi.com/api/tpapi.svc/imagefromurl?size=big&url=http://tweetphoto.com/".$iPid;
$strPic = file_get_contents($strPicUrl);
$filename = "images/".$v;
if(!file_exists($filename))
{
mkdir($filename,0777);
}
file_put_contents("images/",$v."/".$iPid.".jpg",$strPic);
}
else
{
$iPid = "";
}
//get the nmessage of one hours
$time = date('y-m-d H:i:s',strtotime($status->created_at));
$sendtime = strtotime($time);
if($sendtime > $strlocal)
{
$newxml->status[$k]['tid'] = $status->id;
$newxml->status[$k]['text']= $status->text;
$newxml->status[$k]['created']=$status->created_at;
$newxml->status[$k]['image'] = $iPid===""?'':"images/".$v."/".$iPid.".jpg";
$newxml->status[$k]['source']= $status->source;
}
$k++;
}
$newxml->asXml("textxml/".$v.".xml");//生成新xml文件
if(file_exists("textxml/old_".$v.".xml"))//删除原xml文件
{
unlink("textxml/old_".$v.".xml");
}
}
$Etime = microtime(true);
$useTime = $Etime - $Btime;
echo "save ok use time:".$useTime;
?>
分享到:
相关推荐
这是Twitter为确保安全而采用的一种授权方式,开发者需要获取消费者密钥(Consumer Key)和消费者秘密(Consumer Secret),然后生成访问令牌(Access Token)和访问令牌秘密(Access Token Secret)。这些信息将...
Twitter的核心特性在于它的简洁和实时性,用户可以通过手机或电脑快速获取和传播信息。 1. **服务升级与SMS集成**:Twitter最初是通过SMS短信服务运行,但很快升级为可以通过网站收发消息,不再局限于手机之间。这...
Twitter API 是Twitter公司提供的一种服务,允许开发者通过编程方式访问和操作Twitter平台的功能,如发布推文、获取用户信息、搜索推文等。本篇文章将围绕"Twitter API使用例子"这一主题,结合Java编程语言,深入...
### Twitter开放API文档知识点 #### 一、简介 Twitter开放API文档主要介绍了Twitter提供的应用程序编程接口(API),供开发者创建基于Twitter的服务扩展工具或应用程序。本文档覆盖了API的使用方法、认证流程、...
在本例中,"Twitter OAuth the easy way"可能是指一种简化了的流程,使得开发者能够更轻松地为他们的应用获取Twitter的OAuth认证,以便用户可以授权应用发布推文。 描述中提到的“simple post to Twitter script”...
2. 初始化Twitter实例:使用获取的API密钥创建`ConfigurationBuilder`,然后构建`TwitterFactory`,最后获取`Twitter`实例。 3. 发布推文:通过`Twitter`实例的`updateStatus()`方法,可以发布新的推文。 4. 获取...
twitter_scraping, 获取所有用户的tweet ( 并获得超过 3200个限制) Twitter 刮刀Twitter 使得获取用户( 假设他们有超过 3200 )的所有tweet变得很困难。 这是一种使用 python 。selenium 和Tweepy解决这个问题的方法...
- 获取推文:通过`Twitter.getHomeTimeline()`获取用户的时间线,或使用`Twitter.getUserTimeline()`获取指定用户的时间线。 4. **用户管理**: - 关注/取消关注:`Twitter.createFriendship()`和`Twitter....
通过分析和学习这些内容,你可以更深入地理解如何在PHP中处理Twitter的用户数据,例如获取和更新用户信息、管理关注关系等。 总之,"twitter php"的学习涵盖了OAuth认证、API调用、响应处理等多个方面,掌握这些...
在本篇关于php获取twitter最新消息方法的教程中,涵盖了多个知识点,包括PHP中使用CURL进行网络请求,以及正则表达式的应用,HTML实体编码与解码等关键概念。下面将详细解读这些知识点,以便读者能够更好地理解和...
1. 数据获取:Twitter提供API(应用程序接口),允许开发者通过编程方式获取推文。这些API可以获取到特定时间段、特定话题或者特定用户的推文。不过,由于Twitter的API有访问限制,可能需要采用数据爬虫或第三方工具...
这个“twitter API全集”可能包含了Twitter API的各种接口文档、示例代码和教程,帮助开发者进行软件开发,实现对Twitter数据的获取、分析、发布等功能。 Twitter API主要包括以下几个核心部分: 1. **推文(Tweets...
- **订阅博客**:推荐订阅原作者和译者的博客,以获取更多关于Twitter的信息更新。 - **下载地址**:提供书籍的英文版PDF下载链接以及中文版的下载地址。 #### 六、结语 本书详细介绍了Twitter的基本使用方法、策略...
在Android平台上实现Twitter分享功能是一项常见的任务,尤其对于那些希望用户能够轻松地将内容传播到社交媒体的应用开发者来说。本文将深入探讨如何在Android应用中集成Twitter分享,以便用户可以便捷地将文字、链接...
此外,`twitter4j-media-support`模块可以帮助开发者处理媒体内容,比如上传图片到Twitter并将其与推文关联。而`twitter4j-async`模块则适用于处理大量的并发请求,避免阻塞主线程,提高整体性能。 总的来说,...
Twitter API是Twitter官方提供的一套接口,允许开发者通过编程方式获取和操作Twitter上的数据。这包括获取用户信息、推文(tweet)、关注者列表等。要使用Twitter API,你需要在Twitter开发者平台上创建一个应用,并...
这个"Android分享到twitter的demo源码"提供了一个示例,展示了如何在Android应用中实现与Twitter的集成,让用户能够方便地将内容分享到这个全球知名的社交媒体平台。下面我们将深入探讨这个Demo的核心知识点。 1. *...
获取Twitter用户的用户信息! 安装 $ npm install --global twifo-cli OR $ sudo npm install --global twifo-cli 用法 $ Usage: twifo Example: $ twifo 9gag ##有关 : API for this tool. : Get user ...