Nicba1010 icon

Masterpiece

Nicba1010 | PRO | 08/17/18 11:20:11 PM UTC | 0 ⭐ | 657 👁️ | Never ⏰ | []
Python |

2.71 KB

|

None

|

0 👍

/

0 👎

import json
 
import requests
from bs4 import BeautifulSoup
 
total = 0
for i in range(1, 75):
    print("PAGE{}".format(i))
    print("Current TOTAL: {}".format(total))
    sup = BeautifulSoup(
        requests.get("https://store.playstation.com/en-us/grid/STORE-MSF77008-PS3ALLPS3GAMES/{}?gameType=ps3_full_games%2Cminis%2Cps2_classics%2Cpsone_classics%2Cpsn_games%2Cdisc_only&platform=ps3".format(i)).content,
        'lxml')
    for x in sup.find_all('div', {'class': 'grid-cell__title '}):
        y = None
        while True:
            try:
                print('https://store.playstation.com/valkyrie-api/en/us/999/resolve/{}?depth=999'.format(
                    x.parent['href'].split('/')[-1]))
                y = json.loads(requests.get(
                    'https://store.playstation.com/valkyrie-api/en/us/999/resolve/{}?depth=999'.format(
                        x.parent['href'].split('/')[-1])).content)
                break
            except Exception:
                pass
        if type(y['included']) is list:
            for inc in y['included']:
                try:
                    if inc['attributes']['file-size']['value'] is not None:
                        if inc['attributes']['file-size']['unit'] == 'MB':
                            total += int(inc['attributes']['file-size']['value']) * 1024 * 1024
                        elif inc['attributes']['file-size']['unit'] == 'GB':
                            total += int(inc['attributes']['file-size']['value']) * 1024 * 1024 * 1024
                        elif inc['attributes']['file-size']['unit'] == 'KB':
                            total += int(inc['attributes']['file-size']['value']) * 1024
                    print(
                        "{} {}".format(inc['attributes']['file-size']['value'], inc['attributes']['file-size']['unit']))
                except KeyError:
                    pass
        else:
            if y['included']['attributes']['file-size']['value'] is not None:
                if y['included']['attributes']['file-size']['unit'] == 'MB':
                    total += int(y['included']['attributes']['file-size']['value']) * 1024 * 1024
                elif y['included']['attributes']['file-size']['unit'] == 'GB':
                    total += int(y['included']['attributes']['file-size']['value']) * 1024 * 1024 * 1024
                elif y['included']['attributes']['file-size']['unit'] == 'KB':
                    total += int(y['included']['attributes']['file-size']['value']) * 1024
            print("{} {}".format(y['included']['attributes']['file-size']['value'],
                                 y['included']['attributes']['file-size']['unit']))
    print("Current TOTAL: {}".format(total))

Comments