Skip to content

Commit e22522d

Browse files
committed
more parser fixes due to redesign: ads, iap; add whatsnew
1 parent b837c52 commit e22522d

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

google-play.php

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,11 @@ public function parseApplication($packageName, $lang='en_US', $loc='US') {
135135
$values["age"] = strip_tags($this->getRegVal('/<span itemprop="contentRating"><span>(?<content>.*?)<\/span><\/span>/i'));
136136
$values["size"] = $this->getRegVal('/<div class="BgcNfc">Size<\/div><span class="htlgb"><div class="IQ1z0d"><span class="htlgb">(?<content>[^<]+)<\/span>/i'); // 2022-05-27: gone
137137
$values["video"] = $this->getRegVal('/<button aria-label="Play trailer".*?data-trailer-url="(?<content>[^\"]+?)"/i');
138+
$values["whatsnew"] = $this->getRegVal('/<div class="SfzRHd"><div itemprop="description">(?<content>.*?)<\/div><\/div><\/section>/i');
139+
$test = $this->getRegVal('/<span class="UIuSk">(?<content>\s*Contains ads\s*)<\/span>/i'); // <span class="UIuSk">Contains ads</span>
140+
(empty($test)) ? $values["ads"] = 0 : $values["ads"] = 1;
141+
$test = $this->getRegVal('/<span class="UIuSk">(?<content>\s*In-app purchases\s*)<\/span>/i'); // <span class="UIuSk">In-app purchases</span>
142+
(empty($test)) ? $values["iap"] = 0 : $values["iap"] = 1;
138143
} else {
139144
$envals = $this->parseApplication($packageName);
140145
foreach(["lastUpdated","versionName","minimumSDKVersion","installs","age","size"] as $val) $values[$val] = $envals[$val];
@@ -143,13 +148,9 @@ public function parseApplication($packageName, $lang='en_US', $loc='US') {
143148
$values["rating"] = $this->getRegVal('/<div itemprop="starRating"><div class="TT9eCd"[^\>]*>(?<content>[^<]+)(<i class="[^\>]*>star<\/i>)*<\/div>/i');
144149
$values["votes"] = $this->getRegVal('/<div class="g1rdde">(?<content>[^>]+) reviews<\/div>/i');
145150
$values["price"] = $this->getRegVal('/<meta itemprop="price" content="(?<content>[^"]+)">/i');
146-
$test = $this->getRegVal('/<div class="bSIuKf">(?<content>[^<]+)<div/i'); // <div class="bSIuKf">Contains Ads<div
147-
(empty($test)) ? $values["ads"] = 0 : $values["ads"] = 1;
148-
$test = $this->getRegVal('/<div class="aEKMHc">&middot;<\/div>(?<content>[^<]+)</i'); // <div class="aEKMHc">&middot;</div>Offers in-app purchases</div>
149-
(empty($test)) ? $values["iap"] = 0 : $values["iap"] = 1;
150151

151152
$limit = 3;
152-
while ( empty($values["summary"]) && $limit > 0 ) { // sometimes protobuf is missing, but present again on subsequent call
153+
while ( empty($values["summary"]) && $limit > 0 ) { // sometimes protobuf is missing, but present again on subsequent call -- no longer showing up on retries either with design change in 2022-05?
153154
$proto = json_decode($this->getRegVal('/data:(?<content>\[\[\[.+?). sideChannel: .*?\);<\/script/ims'));
154155
if ( empty($proto[0][10]) ) {
155156
--$limit;

0 commit comments

Comments
 (0)