Через greasemonkey добавляем на страницу поле для открытия файла:
<input type="file" id="myFile">
Подписываем это поле на событие change для выполнение нашей функции loadFromFile:
document.getElementById("myFile").addEventListener("change", loadFromFile, false);
Естественно перед этим пишем свою функцию loadFromFile примерно вот так:
function loadFromFile() {
var reader = new FileReader();
reader.onload = function(event) {
var contents = event.target.result;
//в contents находится содержимое файла
//тут пишем что с этим содержимым делать
};
reader.onerror = function(event) {
console.error("Файл не может быть прочитан! код " + event.target.error.code);
};
reader.readAsText(this.files[0]);
}