function updateTwitter($db, $twitter, $hashtag) { $db_con = mysqli_connect($db['host'], $db['user'], $db['password'], $db['name']); $connection = new TwitterOAuth($twitter['consumer_key'], $twitter['consumer_secret'], $twitter['access_token'], $twitter['access_token_secret']); $content['twitter'] = $connection->get("search/tweets", array('q' => '#' . $hashtag . ' filter:images', 'since_id' => $twitter['last_id'], 'include_entities' => true, 'lang' => 'en', 'count' => 100)); $content['vine'] = $connection->get("search/tweets", array('q' => '#' . $hashtag . ' vine.co filter:links', 'since_id' => $twitter['last_id'], 'include_entities' => true, 'lang' => 'en', 'count' => 100)); foreach ($content as $name => $media) { if (isset($media->statuses)) { foreach ($media->statuses as $tweet) { if ($tweet->id > $twitter['last_id'] && (!empty($tweet->entities->urls) || isset($tweet->entities->media))) { $twitter_id = $tweet->id; $tweet_id = $tweet->id_str; $created_at = $tweet->created_at; $user_id = $tweet->user->id; $this_name = mysqli_real_escape_string($db_con, stripEmojis($tweet->user->name)); $screen_name = mysqli_real_escape_string($db_con, $tweet->user->screen_name); $user_location = mysqli_real_escape_string($db_con, stripEmojis($tweet->user->location)); $text = mysqli_real_escape_string($db_con, stripEmojis($tweet->text)); $link_post = 'https://twitter.com/' . $screen_name . '/status/' . $tweet_id; $time_now = time(); $is_vine = false; $is_tweet = false; $type = 'photo'; if ($name == 'twitter' && isset($tweet->entities->media)) { $is_tweet = true; $media_url = $tweet->entities->media[0]->media_url; $media_url_https = $tweet->entities->media[0]->media_url_https; } else { if (strpos($tweet->entities->urls[0]->expanded_url, 'vine.co') !== false && $name == 'vine' && !empty($tweet->entities->urls) && isset($tweet->entities->urls[0]->expanded_url)) { $is_vine = true; $type = 'video'; $media_url = $tweet->entities->urls[0]->expanded_url; $dom = new DomFinder($media_url); $video_cell = $dom->find("//meta[@property='twitter:player:stream']", 'content'); $picture_cell = $dom->find("//meta[@property='twitter:image']", 'content'); $media_url = $picture_cell[0]; $media_url_https = $video_cell[0]; } } if ($is_tweet || $is_vine) { if (mysqli_query($db_con, "insert into media (time_now, source_id, created_at, user_id, name, screen_name, user_location, text, media_url, media_url_https, source, type, hashtag, post_url) " . "values('{$time_now}', '{$twitter_id}', '{$created_at}','{$user_id}','{$this_name}','{$screen_name}', '{$user_location}', '{$text}', '{$media_url}', '{$media_url_https}', 'twitter', '{$type}', '{$hashtag}', '{$link_post}')")) { } } } } } } mysqli_close($db_con); }
function findTopBooks() { $books = array(); $dom = new DomFinder($this->base_url . "/scripts/cultura/home/lancamentos.asp?titem=1"); $book_urls = $dom->find("//div[@class='img_capa']/a", 'href'); foreach ($book_urls as $book_url) { $book_dom = new DomFinder($this->base_url . $book_url); $book = new Book($book_dom); $books[] = $book; } return $books; }