Sie können() von der Konsole kopieren

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Sie können es in Blink/WebKit, jedenfalls. Sie können es nicht direkt in JavaScript tun, da dies meiner Meinung nach ein Sicherheitsproblem (oder ein Problem des guten Geschmacks) ist, das einfach nicht erlaubt ist. Seiten, die dies tun, verlassen sich normalerweise auf Flash. Aber es funktioniert in der Konsole, und das kann in vielerlei Hinsicht nützlich sein!

Ihr eigener kleiner Screen-Scraper

So finde ich es am nützlichsten. Es gibt einige Inhalte auf einer Seite, aber aus irgendeinem Grund ist es nicht sehr einfach, sie mit der Maus zu kopieren und einzufügen. Vielleicht ist ein Teil davon versteckt. Vielleicht ist es mit Dingen vermischt, die Sie nicht wollen.

Aber es ist einfach genug, einige schnelle JavaScript-Selektoren zu verwenden, um an das zu gelangen, was Sie wollen.

Stellen Sie sich vor, Sie betrachten das CSS-Tricks-Almanach.

Und Ihr Ziel ist es, eine kommagetrennte Liste aller CSS-Eigenschaften zu erhalten. Es gibt eine Reihe von Möglichkeiten, dies zu tun, aber das Erstellen Ihres eigenen kleinen Screen-Scrapers in der Konsole wird gut funktionieren.

var allItems = document.querySelectorAll(".property-list .children a");

var csv = "";

[].forEach.call(allItems, function(item) {
  // do whatever
  csv += item.text + ", ";
});

copy(csv);

Hier ist die Ausgabe in der Konsole, aber sie befindet sich auch in der Zwischenablage zum einfachen Verschieben.

Ich habe es sogar schon auf cdnjs.com verwendet, um ein JSON-Objekt in genau dem Format zu erstellen, das ich wollte!

var newJSON = "[", name, url, thing;

$(".table-striped tbody tr").each(function(i, el) {

  thing = $(el);

  name = thing.find("td:first a").text();
  url = "https:";
  url += thing.find("td:last p").text();
  token = url.split("/");
  token = token[token.length - 1];
  token = token.split('.');
  token = token[0];

  newJSON += '{\n';
  newJSON += '  "name": "' + name + '",\n';
  newJSON += '  "value": "' + url + '",\n';
  newJSON += '  "tokens": ["' + token + '"]\n';
  newJSON += '},';

});

newJSON += "]";

copy(newJSON);

Haben Sie copy() jemals für etwas verwendet, das Sie nützlich fanden?