Copie trechos de texto um por um da tabela no artigo da wikipedia

0

Eu gostaria de uma solução que permita copiar o conteúdo da coluna ISBN na tabela da Wikipédia para a área de transferência, um a um, usando um atalho de teclado. Eu tenho AutoHotKey instalado (não em relação a este problema) se isso ajuda. Obrigado.

    
por jacoman891 05.09.2015 / 22:11

1 resposta

1

Editar: Veja Copiar ISBN diretamente para a área de transferência abaixo para o novo código.

Com base em esta resposta .

Mostrar aviso para copiar

Você pode usar este código JavaScript:

var textIndex = 0;
jQuery("table.wikitable:nth-child(9)").after("<button type='button' onclick='copyText()'>Get Next ISBN</button>");
function copyText() {
    window.prompt("Copy to clipboard: Ctrl+C, Enter", jQuery("table.wikitable:nth-child(9) tr td:nth-of-type(4) a").eq(textIndex).text() );
    textIndex++;
}

Cria um botão na parte inferior da tabela.

de cada vez,

  1. Navegue até a página da web (por exemplo, usando Alt + Guia ou Ctrl + Guia ).
  2. Clique no botão. Um prompt aparece.
  3. Pressione Ctrl + C .
  4. Pressione Enter para fechar o prompt.

Não é o mais eficiente, mas funciona.

Para usar este código:

  1. Abra o console do seu navegador, por exemplo pressionando F12 .
  2. Navegue até a guia Console , se ainda não estiver selecionada.
  3. Cole na caixa.
  4. Pressione Enter .

Copie o ISBN diretamente para a área de transferência

O novo código copia o ISBN ao clicar no botão, reduzindo o número de etapas. (Deixe de fora a linha var textIndex = 0; se você não quiser perder o seu lugar.) Ela só funciona em alguns navegadores; Eu testei no Chrome 45.0.2454.85. De acordo com a resposta vinculada , ela deve funcionar no Google Chrome 44, Firefox 42.0a1 e IE 11.0.8600.17814.

function copyTextToClipboard(text) {
  var textArea = document.createElement("textarea");

  //
  // *** This styling is an extra step which is likely not required. ***
  //
  // Why is it here? To ensure:
  // 1. the element is able to have focus and selection.
  // 2. if element was to flash render it has minimal visual impact.
  // 3. less flakyness with selection and copying which **might** occur if
  //    the textarea element is not visible.
  //
  // The likelihood is the element won't even render, not even a flash,
  // so some of these are just precautions. However in IE the element
  // is visible whilst the popup box asking the user for permission for
  // the web page to copy to the clipboard.
  //

  // Place in top-left corner of screen regardless of scroll position.
  textArea.style.position = 'fixed';
  textArea.style.top = 0;
  textArea.style.left = 0;

  // Ensure it has a small width and height. Setting to 1px / 1em
  // doesn't work as this gives a negative w/h on some browsers.
  textArea.style.width = '2em';
  textArea.style.height = '2em';

  // We don't need padding, reducing the size if it does flash render.
  textArea.style.padding = 0;

  // Clean up any borders.
  textArea.style.border = 'none';
  textArea.style.outline = 'none';
  textArea.style.boxShadow = 'none';

  // Avoid flash of white box if rendered for any reason.
  textArea.style.background = 'transparent';


  textArea.value = text;

  document.body.appendChild(textArea);

  textArea.select();

  try {
    var successful = document.execCommand('copy');
    var msg = successful ? 'successful' : 'unsuccessful';
    console.log('Copying text command was ' + msg);
  } catch (err) {
    console.log('Oops, unable to copy');
  }

  document.body.removeChild(textArea);
}

var textIndex = 0;
jQuery('table.wikitable:nth-child(9)').after('<button type="button" onclick="copyISBN()">Get Next ISBN</button>');
function copyISBN() {
  copyTextToClipboard(jQuery('table.wikitable:nth-child(9) tr td:nth-of-type(4) a').eq(textIndex).text());
  textIndex++;
}

de cada vez,

  1. Navegue até a página da web (por exemplo, usando Alt + Guia ou Ctrl + Guia ).
  2. Clique no botão ou pressione Espaço se o botão já estiver focalizado. O ISBN é copiado automaticamente para sua área de transferência.

Não funciona por atalho, mas pelo menos copia para você.

    
por 05.09.2015 / 23:06

Tags