2013-09-19 3 views
0

Я успешно извлек твиты, принадлежащие определенному хэштегу.получать твиты с определенным хэштегом через равные промежутки времени?

Для людей, заинтересованных в коде, его внизу.

Это то, что я сделал:. #Dhoom3teaser

Но по некоторым причинам мне нужно, чтобы получить каждый твит, вставленный в моей table.How я продолжаю вставляя что-то на регулярные промежутки времени без выводятся повторяющиеся (т.е. твит должен быть вставлены в соответствии с их меткой времени). Как я различаю твиты?

Я думал, что я буду использовать setInterval. Но тогда подумал, что может быть лучшее решение.

Надеюсь, что я ясно?

<?php 
ini_set('display_errors', 1); 
require_once('TwitterAPIExchange.php'); 
include_once $_SERVER["DOCUMENT_ROOT"]."/includes/db/db_conn.php"; 

$settings = array(
    'oauth_access_token' => "", 
    'oauth_access_token_secret' => "", 
    'consumer_key' => "", 
    'consumer_secret' => "" 
); 
$url = 'https://api.twitter.com/1.1/search/tweets.json'; 
$getfield = '?q=#Dhoom3Teaser'; 
$requestMethod = 'GET'; 

$twitter = new TwitterAPIExchange($settings); 
$response = $twitter->setGetfield($getfield) 
    ->buildOauth($url, $requestMethod) 
    ->performRequest(); 

$decoded = json_decode($response); 

echo '<pre>';print_r($decoded);echo '<pre>'; 
+0

Вы делаете это в браузере или в качестве задания php cron? – MattDiamant

+0

Вы думали, что используете cronjob? Между содержимым твита, именем пользователя и временной меткой вам не должно быть проблем, чтобы избежать дублирования записей. – user1056677

+0

@MattDiamant: не знаю много о cron..heard, это может быть возможное решение? –

ответ

1

Требуется работа cron. Вот статья о том, как ее настроить: http://www.thesitewizard.com/general/set-cron-job.shtml

Что такое задание cron, является стандартным способом запуска вашего скрипта по расписанию. Итак, один раз в день, или один раз в час, или в 2:15 в третью субботу каждого месяца и т. Д. Вы собираетесь написать задание cron, чтобы он запускал ваш скрипт для чириканья, а затем, чтобы убедиться, что что повторных твитов нет, вы проверите таблицу для дубликатов, прежде чем вставлять новый твит. Я уверен (но может ошибаться), что каждый твит имеет какой-то идентификатор твита, поэтому убедитесь, что твит с этим идентификатором не существует в таблице, прежде чем вставлять его.

Редактировать: На самом деле было бы лучше сделать таблицу так, чтобы идентификатор каждой строки был UNIQUE. Вам не нужно писать какие-либо дополнительные php.

0

Посмотрите здесь: https://dev.twitter.com/docs/platform-objects/tweets

Атрибут вы хотите «идентификатор (идентифицирует твит однозначно)

Редактировать Некоторые дополнительные идеи:. Если я должен был сделать это в PHP , я бы использовал cronjobs, если это возможно. Для хранения уникального_ида (и желаемых других полей из данных твита) вы могли бы просто использовать таблицу mysql (и использовать id как первичный ключ). Если у вас нет опыта в этом поле, это будет сложнее, так как это самый простой способ сохраняйте много твитов и избегайте дубликатов.

Для поиска api part: существует параметр «from_id», что в основном больше, чем фильтр. Поэтому, если вы сохранили свой последний извлеченный твит, вы можете просто использовать его для продолжения поиска и получения твитов, более новых, чем последний сохраненный (так что в любом случае не должно быть никаких дубликатов).

+0

это только часть решения !!! Я надеюсь, что вы могли бы дать мне варианты, такие как cron, setInterval..just ask..and yes, я видел уникальный идентификатор ... но как его использовать? –

+0

Обновлено мое сообщение, надеюсь, что это очистит. Если я все еще пропустил что-то, не стесняйтесь спрашивать снова, так как ваш вопрос очень широк –

Смежные вопросы