From 0e5cf0d14ee86cf764fff15d1dccd2bd9d09472a Mon Sep 17 00:00:00 2001 From: logmanoriginal Date: Mon, 19 Dec 2016 19:49:53 +0100 Subject: [PATCH] [GooglePlusPost] Return content and title compatible to current RSS-Bridge --- bridges/GooglePlusPostBridge.php | 27 ++++++--------------------- 1 file changed, 6 insertions(+), 21 deletions(-) diff --git a/bridges/GooglePlusPostBridge.php b/bridges/GooglePlusPostBridge.php index 1c1e1d9..6ee6565 100644 --- a/bridges/GooglePlusPostBridge.php +++ b/bridges/GooglePlusPostBridge.php @@ -20,10 +20,9 @@ class GooglePlusPostBridge extends BridgeAbstract public function collectData() { // get content parsed -// $html = getSimpleHTMLDOM(__DIR__ . '/../posts2.html' - $html = getSimpleHTMLDOM(self::URI . urlencode($this->getInput('username')) . '/posts' + $html = getSimpleHTMLDOMCached(self::URI . urlencode($this->getInput('username')) . '/posts' // force language - , false, stream_context_create(array('http'=> array( + , 84600, false, stream_context_create(array('http'=> array( 'header' => 'Accept-Language: fr,fr-be,fr-fr;q=0.8,en;q=0.4,en-us;q=0.2;*' . "\r\n" ))) ) OR returnServerError('No results for this query.'); @@ -32,26 +31,17 @@ class GooglePlusPostBridge extends BridgeAbstract $this->_title = $html->find('meta[property]', 0)->getAttribute('content'); $this->_url = $html->find('meta[itemprop=url]', 0)->getAttribute('content'); -// foreach ($html->find('meta') as $e) -// { -// $item = array(); -// $item['content'] = var_export($e->attr, true); -// $this->items[] = $item; -// } - // div[jsmodel=XNmfOc] foreach($html->find('div.yt') as $post) { $item = array(); // $item['content'] = $post->find('div.Al', 0)->innertext; - $item['username'] = $item['fullname'] = $post->find('header.lea h3 a', 0)->innertext; + $item['author'] = $item['fullname'] = $post->find('header.lea h3 a', 0)->innertext; $item['id'] = $post->getAttribute('id'); -// $item['title'] = $item['fullname'] = $post->find('header.lea', 0)->plaintext; + $item['title'] = $item['fullname'] = $post->find('header.lea', 0)->plaintext; $item['avatar'] = $post->find('div.ys img', 0)->src; -// var_dump((($post->find('a.o-U-s', 0)->getAllAttributes()))); $item['uri'] = self::URI . $post->find('a.o-U-s', 0)->href; $item['timestamp'] = strtotime($post->find('a.o-U-s', 0)->plaintext); - $this->items[] = $item; // hashtag to treat : https://plus.google.com/explore/tag $hashtags = array(); @@ -64,14 +54,10 @@ class GooglePlusPostBridge extends BridgeAbstract // avatar display $item['content'] .= '
avatar' . $item['username'] . '
'; + $item['content'] .= '">' . $item['author'] . ''; $content = $post->find('div.Al', 0); - // alter link -// $content = $content->innertext; -// $content = str_replace('href="./', 'href="' . self::URI, $content); -// $content = str_replace('href="photos', 'href="' . self::URI . 'photos', $content); // XXX ugly but I don't have any idea how to do a better stuff, str_replace on link doesn't work as expected and ask too many checks foreach($content->find('a') as $link) { @@ -96,9 +82,8 @@ class GooglePlusPostBridge extends BridgeAbstract // extract plaintext $item['content_simple'] = $post->find('div.Al', 0)->plaintext; + $this->items[] = $item; } - -// $html->save(__DIR__ . '/../posts2.html'); } public function getName()