如何保存我访问.txt文件的每个页面的URL

时间:2014-09-06 16:38:09

标签: java javascript php html google-chrome

我想要它做的是,每次访问新页面时,单击链接等,URL将自动保存为.txt文件。 Chrome或Firefox都可以。 PHP,HTML,Java,Javascript也没问题。 如果有人可以帮助我,那将是非常棒的。

chrome.browserAction.onClicked.addListener(createFile);
createFile();

function createFile()
{
    chrome.tabs.getSelected(null, function(tab) {
        window.webkitRequestFileSystem(window.TEMPORARY, 1024*1024, function(fs) {
            fs.root.getFile('test', {create: true}, function(fileEntry) {
                fileEntry.createWriter(function(fileWriter) {
                    var builder = new WebKitBlobBuilder();
                    builder.append("Saurabh");
                    builder.append("\n");
                    builder.append("Saxena");

                    var blob = builder.getBlob('text/plain');

                    fileWriter.onwriteend = function() {
                        chrome.tabs.create({"url":fileEntry.toURL(),"selected":true},function(tab){});
                    };
                    fileWriter.write(blob);
                }, errorHandler);
            }, errorHandler);
        }, errorHandler);
    });
}
function errorHandler(e) {
  var msg = '';

  switch (e.code) {
    case FileError.QUOTA_EXCEEDED_ERR:
      msg = 'QUOTA_EXCEEDED_ERR';
      break;
    case FileError.NOT_FOUND_ERR:
      msg = 'NOT_FOUND_ERR';
      break;
    case FileError.SECURITY_ERR:
      msg = 'SECURITY_ERR';
      break;
    case FileError.INVALID_MODIFICATION_ERR:
      msg = 'INVALID_MODIFICATION_ERR';
      break;
    case FileError.INVALID_STATE_ERR:
      msg = 'INVALID_STATE_ERR';
      break;
    default:
      msg = 'Unknown Error';
      break;
  };

  Console.Log('Error: ' + msg);
}

我已经在Chrome中使用Tampermonkey尝试了这个Javascript代码,但它没有用。

1 个答案:

答案 0 :(得分:0)

我知道如何通过创建Chrome扩展程序将网址保存到Chrome存储空间。

您必须使用以下结构创建 manifest.json

{
  "name": "Save URLs",
  "description": "Save URLs",
  "version": "0.7",
  "permissions": [
          "tabs", "storage"
  ],
  "background": {
    "scripts": ["store.js"]
  },
  "manifest_version": 2
}

和JavaScript文件 store.js

var urlList = [];
chrome.tabs.onUpdated.addListener(function(tabId, changeInfo, tab) {
    if(changeInfo.url) {
        urlList.push(tab.url);
        chrome.storage.sync.set({'urlList': urlList}, function() {
            // callback body
        });

        chrome.storage.sync.get('urlList', function(items) {
            alert(items.urlList);
        }); 
    }
});

有关将扩展程序加载到浏览器的信息:https://developer.chrome.com/extensions/getstarted#unpacked