So sánh một đoạn văn bản bôi đen với dữ liệu trong file csv bằng Chatgpt

 Prompt:

viết cho tôi đoạn code cho extensions tampermonkey của chrome Bước 1: Tôi sẽ bôi đen bất kỳ ký tự trên trình duyệt Bước 2: đọc và So sánh ký tự đã bội đen đó với file dữ liệu csv excel Bước 3: So sánh ký tự bôi đen và file dữ liệu csv. Nếu trùng nhau thì hiển thị thông báo trùng, nếu không trùng nhau hiển thị thông báo không trùng. 

Tampermonkey Script

// ==UserScript==
// @name         Compare Selected Text with CSV Data (Case Insensitive)
// @namespace    http://tampermonkey.net/
// @version      0.2
// @description  Compare selected text with data from a CSV file without case sensitivity
// @author       You
// @match        *://*/*
// @grant        GM_xmlhttpRequest
// @run-at       document-idle
// ==/UserScript==

(function() {
    'use strict';

    // URL của file CSV (Thay đổi thành URL file CSV của bạn)
    const csvFileUrl = 'https://example.com/your-data.csv'; 

    // Hàm đọc CSV từ URL
    function loadCSV(callback) {
        GM_xmlhttpRequest({
            method: 'GET',
            url: csvFileUrl,
            onload: function(response) {
                const csvData = response.responseText;
                callback(parseCSV(csvData));
            },
            onerror: function() {
                alert('Không thể tải file CSV. Hãy kiểm tra URL.');
            }
        });
    }

    // Hàm phân tích cú pháp CSV
    function parseCSV(data) {
        const lines = data.trim().split('\n');
        return lines.map(line => line.split(',').map(cell => cell.trim().toLowerCase())); // Chuyển đổi tất cả dữ liệu thành chữ thường
    }

    // Hàm kiểm tra ký tự đã bôi đen
    function checkSelection(csvData) {
        const selection = window.getSelection().toString().trim().toLowerCase(); // Chuyển đổi văn bản đã bôi đen thành chữ thường

        if (selection === '') {
            alert('Vui lòng bôi đen một đoạn văn bản.');
            return;
        }

        let found = false;

        for (let row of csvData) {
            if (row.includes(selection)) {
                found = true;
                break;
            }
        }

        if (found) {
            alert('Ký tự đã bôi đen trùng khớp với dữ liệu trong file CSV.');
        } else {
            alert('Ký tự đã bôi đen không trùng khớp với dữ liệu trong file CSV.');
        }
    }

    // Gán sự kiện cho menu chuột phải
    document.addEventListener('contextmenu', function(event) {
        event.preventDefault();
        loadCSV(checkSelection);
    });
})();

Hướng dẫn Cài đặt và Sử dụng

  1. Cài đặt Tampermonkey: Nếu bạn chưa có, hãy cài đặt tiện ích Tampermonkey từ Chrome Web Store.

  2. Tạo Script Mới:

    • Mở Tampermonkey trên trình duyệt của bạn và chọn "Tạo một script mới".
    • Xóa nội dung hiện tại và dán mã trên vào cửa sổ soạn thảo script.
    • Lưu script.
  3. Cập nhật URL CSV:

    • Thay thế giá trị của csvFileUrl bằng URL của file CSV chứa dữ liệu mà bạn muốn so sánh.
  4. Sử dụng Script:

    • Truy cập bất kỳ trang web nào.
    • Bôi đen một đoạn văn bản trên trang.
    • Nhấp chuột phải và chọn "Inspect" để kích hoạt script (hoặc bạn có thể thay đổi sự kiện kích hoạt tùy theo nhu cầu).

Giải thích Đoạn Mã

  • GM_xmlhttpRequest: Sử dụng để tải file CSV từ URL. Đảm bảo URL là đúng và có thể truy cập được.

  • parseCSV: Chia nhỏ dữ liệu CSV thành các dòng và ô.

  • checkSelection: Kiểm tra xem văn bản đã bôi đen có trùng khớp với dữ liệu trong file CSV không và thông báo cho người dùng.

  • document.addEventListener('contextmenu'): Thêm sự kiện vào menu chuột phải để kích hoạt chức năng kiểm tra khi nhấp chuột phải trên trang.

Lưu Ý

  • Đảm bảo rằng file CSV có định dạng đơn giản và không chứa ký tự đặc biệt có thể gây lỗi phân tích cú pháp.
  • Đảm bảo rằng Tampermonkey có quyền truy cập vào URL của file CSV.

Nhận xét

Bài đăng phổ biến