Magic: the Gathering

News

Como fazer download do seu Histórico de Planeswalker Points

, updated , Comment regular icon0 comments

Dois programadores criaram scripts que permitem fazer o download de todo seu histórico para um arquivo CSV

Writer image

revised by Tabata Marques

Edit Article

Muitos jogadores estão triste pelo anunciado fim do DCI. A Wizards declarou seu fim sem fornecer ferramentas para download do seu histórico ou qualquer outra forma para você se relembrar de seu passado.

Dois programadores, José Moreira e Zachary Langlink outside website, decidiram "dar um jeitinho" para que seja possível de você ver seu histórico de jogador de Magic a qualquer momento. Os dois criaram scripts que permitem fazer o download de todo seu histórico para um arquivo CSV.

Ad

Vamos passo a passo o que indicam; lembrando que o tutorial original pode ser visto em inglês aquilink outside website.

PASSO 1

Vá até a página da Wizards of the Coast com sua conta acessada. Procure por seu histórico dentro do sitelink outside website.

Image content of the Website

PASSO 2

Acesse o console do seu navegador. No Chrome você acessa clicando em F12. Depois disso, clique em "Console" para poder escrever códigos na sua página.

Image content of the Website

PASSO 3

Dentro de console escreva o seguinte:

document.querySelectorAll('a.Expand').forEach(a=>{

a.focus();

a.click();

});

document.querySelectorAll('.MatchOpponentTeamExpand a').forEach(a=>{

a.focus();

a.click();

});

O código de cima tem que ser todo copiado e colado em console. Depois dê enter para ele rodar. Todos os seus eventos devem começar a abrir, espere todos abrirem.

PASSO 4

Depois de todos os eventos abertos, copie o seguinte código no console:

let content = '"date","description","store","location","points","pro points","multiplier","total event players","format","place","round number","result","opponent"\r\n';

document.querySelectorAll('.HistoryPanelRow').forEach(row=>{

//console.log(content);

const date = row.querySelector('.Date').innerText.trim() || "";

const description = row.querySelector('.Description').innerText.trim().replace(/""/g,'\"') || "";

const location = row.querySelector('.Location').innerText.trim().replace(/""/g,'\"') || "";

const lifetimepoints = row.querySelector('.LifetimePoints').innerText.trim() || "";

const propoints = row.querySelector('.ProPoints').innerText.trim() || "";

const multiplier = row.querySelector('.EventMultiplier') ? row.querySelector('.EventMultiplier').innerText.trim() : "";

const totalPlayers = row.querySelector('.EventPlayers') ? row.querySelector('.EventPlayers').innerText.trim() : "";

const eventFormat = row.querySelector('.EventFormat') ? row.querySelector('.EventFormat').innerText.trim() : "";

const eventLocation = row.querySelector('.EventLocation') ? row.querySelector('.EventLocation').innerText.trim().replace(/""/g,'\"') : "";

const place = row.querySelector('.EventPlace') ? row.querySelector('.EventPlace').innerText.trim() : "";

row.querySelectorAll('.MatchHistoryTable .MatchHistoryRow').forEach(match=>{

const roundNumber = match.querySelector('.MatchPlace') ? match.querySelector('.MatchPlace').innerText.trim() : "";

const result = match.querySelector('.MatchResult') ? match.querySelector('.MatchResult').innerText.trim() : "";

let opp = match.querySelector('.MatchOpponent') ? match.querySelector('.MatchOpponent').innerText.trim().replace(/""/g,'\"') : "";

if(match.querySelector('.MatchOpponentTeam')){

opp += ' ';

match.querySelectorAll('.MatchOpponentTeam div').forEach(teamopp=>{

opp += teamopp.innerText.trim().replace(/""/g,'\"') + ', ';

Ad

});

}

content += `"${date}","${description}","${location}","${eventLocation}","${lifetimepoints}","${propoints}","${multiplier}","${totalPlayers}","${eventFormat}","${place}","${roundNumber}","${result}","${opp}"\r\n`;

});

});

let link = document.createElement('a')

link.id = 'download-csv'

link.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(content));

link.setAttribute('download', 'pwp.export.csv');

document.body.appendChild(link)

document.querySelector('#download-csv').click();

PASSO 5

Espere um pouco e um arquivo CSV com todo seu histórico deve ser baixado. Cada navegador pode reagir de forma diferente, então caso tenha problemas, sugerimos postá-los no Github dos desenvolvedoreslink outside website.

Um especial obrigado a Azhariel por informar essa ferramenta.