Skip to content
This repository has been archived by the owner on Oct 2, 2022. It is now read-only.

Site cannot fully load sometime #38

Open
savely-krasovsky opened this issue Feb 16, 2019 · 3 comments
Open

Site cannot fully load sometime #38

savely-krasovsky opened this issue Feb 16, 2019 · 3 comments

Comments

@savely-krasovsky
Copy link
Contributor

savely-krasovsky commented Feb 16, 2019

It looks like this:
default
We should somehow mitigate it, current answer in such cases:

"icon": "https://d15f34w2p8l1cc.cloudfront.net/overwatch/7d21d4ae099ba3299fef3688cd45e6635478bc9a0ff957643f873c18522b6839.png",
    "name": "Example-1234",
    "level": 100,
    "rating": 2000,
    "private": false,
    "gamesWon": 500,
    "prestige": 1,
    "levelIcon": "https://d15f34w2p8l1cc.cloudfront.net/overwatch/e8b7df4b88998380658d49d00e7bc483c740432ac417218e94fab4137bec4ae0.png",
    "ratingIcon": "https://d1u1mce87gyfbn.cloudfront.net/game/rank-icons/rank-GoldTier.png",
    "endorsement": 3,
    "prestigeIcon": "https://d15f34w2p8l1cc.cloudfront.net/overwatch/8de2fe5d938256a5725abe4b3655ee5e9067b7a1f4d5ff637d974eb9c2e4a1ea.png",
    "quickPlayStats": {
      "topHeroes": {
        "": {
          "gamesWon": 0,
          "timePlayed": "0",
          "multiKillBest": 0,
          "winPercentage": 0,
          "objectiveKills": 0,
          "weaponAccuracy": 0,
          "eliminationsPerLife": 0,
          "timePlayedInSeconds": 0
        }
      },
      "careerStats": {
        "": {
          "best": null,
          "game": null,
          "combat": null,
          "deaths": null,
          "assists": null,
          "average": null,
          "matchAwards": null,
          "heroSpecific": null,
          "miscellaneous": null
        },
        "allHeroes": {
          "best": null,
          "game": null,
          "combat": null,
          "deaths": null,
          "assists": null,
          "average": null,
          "matchAwards": null,
          "heroSpecific": null,
          "miscellaneous": null
        }
      }
    },
    "endorsementIcon": "https://d3hmvhl7ru3t12.cloudfront.net/svg/icons/endorsement-frames-aa182c1f63b51afa951daec63595791283ab97ea3a07f8d47abf9dc7aeda5cc67c786041042de0b8e427194ed084f7cee6b56fa984532199e7ea95bc12bbd995.svg#_3",
    "competitiveStats": {
      "topHeroes": {
        "": {
          "gamesWon": 0,
          "timePlayed": "0",
          "multiKillBest": 0,
          "winPercentage": 0,
          "objectiveKills": 0,
          "weaponAccuracy": 0,
          "eliminationsPerLife": 0,
          "timePlayedInSeconds": 0
        }
      },
      "careerStats": {
        "": {
          "best": null,
          "game": null,
          "combat": null,
          "deaths": null,
          "assists": null,
          "average": null,
          "matchAwards": null,
          "heroSpecific": null,
          "miscellaneous": null
        },
        "allHeroes": {
          "best": null,
          "game": null,
          "combat": null,
          "deaths": null,
          "assists": null,
          "average": null,
          "matchAwards": null,
          "heroSpecific": null,
          "miscellaneous": null
        }
      }
    }
  }

It happens pretty often (40% of page loads).

Related to #22

@savely-krasovsky
Copy link
Contributor Author

savely-krasovsky commented Feb 17, 2019

TBH, I am pretty disappointed HOW bad blizzard site is. It uses crazy cache that can show you literally three different profiles just by clicking "refresh" button in browser. Refresh -- profile is private. Refresh -- profile SUDDENLY NOT private. Refresh -- profile not private, but dozen of info not loaded. It's f...in crazy.

I am thinking about abandoning my project until API will be released (so sort of never, I guess).

@s32x
Copy link
Owner

s32x commented Feb 17, 2019

I see what you're saying. It's pretty sad that it would load this way via blizzards frontend. The most I could recommend is hitting the endpoint several times (perhaps concurrently) and hope one of the payloads is larger than the rest and has real data. Since this app is a basic passthrough I don't think there's much I can do on my end besides performing the same concurrent logic.

Web scraping is never fun. This project and my anime ripper are both projects I don't keep up with very often for this particular reason. It's almost not worth the trouble.

@savely-krasovsky
Copy link
Contributor Author

savely-krasovsky commented Feb 17, 2019

I tried to make stats-function recursive with attempts counter. Even with 100 attempts it not loads some profiles. Because their caching is NIGHTMARE. It started only after december, their forums have tons of reports, but nobody cares, "api is not a priority"...

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants