LocalStorage Export/Import

Add Tampermonkey menu commands to export and import localStorage data from any website!

  1. // ==UserScript==
  2. // @name LocalStorage Export/Import
  3. // @author adityash4rma
  4. // @version 2.0
  5. // @namespace https://gf.qytechs.cn/en/users/1450540-adityash4rma
  6. // @description Add Tampermonkey menu commands to export and import localStorage data from any website!
  7. // @icon https://cdn-icons-png.flaticon.com/512/18091/18091224.png
  8. // @match *://*/*
  9. // @grant GM_registerMenuCommand
  10. // @license MIT
  11. // ==/UserScript==
  12.  
  13. (function() {
  14. 'use strict';
  15. // This project is inspired by: https://gist.github.com/shufengh/e331c3d9a91d142dc0786ba6ddc95872
  16. function exportLocalStorage() {
  17. var obj = JSON.stringify(localStorage, null, 4);
  18. var vLink = document.createElement('a');
  19. var vBlob = new Blob([obj], {type: "octet/stream"});
  20. var vUrl = window.URL.createObjectURL(vBlob);
  21. vLink.setAttribute('href', vUrl);
  22. vLink.setAttribute('download', location.hostname + '-export.json');
  23. vLink.click();
  24. }
  25.  
  26. function importLocalStorage() {
  27. var fileInput = document.createElement('input');
  28. fileInput.type = 'file';
  29. fileInput.accept = '.json';
  30. fileInput.click();
  31.  
  32. fileInput.addEventListener('change', function(event) {
  33. var file = event.target.files[0];
  34. if (file) {
  35. var reader = new FileReader();
  36. reader.readAsText(file);
  37. reader.onload = function(e) {
  38. try {
  39. var jsonData = JSON.parse(e.target.result);
  40. for (var key in jsonData) {
  41. if (jsonData.hasOwnProperty(key)) {
  42. localStorage.setItem(key, jsonData[key]);
  43. }
  44. }
  45. alert("LocalStorage has been updated from the JSON file.");
  46. } catch (err) {
  47. alert("Error parsing JSON: " + err);
  48. }
  49. };
  50. reader.onerror = function() {
  51. alert("Error reading file.");
  52. };
  53. } else {
  54. alert("No file selected.");
  55. }
  56. });
  57. }
  58. function clearLocalStorage() {
  59. localStorage.clear()
  60. }
  61. GM_registerMenuCommand("Export LocalStorage", exportLocalStorage);
  62. GM_registerMenuCommand("Import LocalStorage", importLocalStorage);
  63. GM_registerMenuCommand("Clear LocalStorage", clearLocalStorage);
  64. })();

QingJ © 2025

镜像随时可能失效,请加Q群300939539或关注我们的公众号极客氢云获取最新地址