मैं अपनी Google Chrome खोज इंजन प्रविष्टियों को कैसे साझा कर सकता हूं?


30

मैंने Google Chrome में 'खोज इंजन संपादित करें' का उपयोग करके कुछ खोज प्रविष्टियाँ बनाई हैं।

मैं इनमें से कुछ प्रविष्टियों को अपने सहयोगियों के साथ कैसे साझा कर सकता हूं?


यह इतना बड़ा सवाल है। मैंने ludovic.chabant.com/devblog/2010/12/29/… पाया, लेकिन 2010-2011 के बाद से इसे आज़माने की जहमत नहीं उठाना चाहता। इंटरनेट पर 5 से 6 साल अनंत काल है। काश, Google Chrome में और उसी Chrome इंस्टॉलेशन के भीतर प्रोफ़ाइल में साझा करने का एक सुविधाजनक (अपडेटेड) तरीका होता।
रयान

जवाबों:


6

यहाँ अपने क्रोम खोज इंजन को लिनक्स पर CSV के रूप में निर्यात करने के लिए एक एकल आदेश दिया गया है:

sqlite3 -csv ~/.config/chromium/Default/Web\ Data 'select short_name,keyword,url from keywords' > ~/search-engines.csv

आपको स्थापित sqlite3 की आवश्यकता है। ~/.config/chromeयदि आप Windows पर हैं, तो संबंधित Windows पथ से बदलें । कुछ ऐसा होना चाहिए%AppData%\Local\Google\Chrome\User Data

कहीं और फिर से आयात करने के लिए SQL के रूप में निर्यात करना

CSV को निर्यात करने के बजाय, आप sqlite इन्सर्ट स्टेटमेंट्स को निर्यात कर सकते हैं:

(printf 'begin transaction;\n'; sqlite3 ~/.config/chromium/Default/Web\ Data 'select short_name,keyword,url,favicon_url from keywords' | awk -F\| '{ printf "insert into keywords (short_name, keyword, url, favicon_url) values ('"'"%s"'"', '"'"%s"'"', '"'"%s"'"', '"'"%s"'"');\n", $1, $2, $3, $4 }'; printf 'end transaction;\n') > ~/search-engine-export.sql

फिर ~/search-engine-export.sqlदूसरी मशीन पर कॉपी करें, और इस कमांड के साथ आयात करें:

sqlite3 ~/.config/chromium/Default/Web\ Data < search-engine-export.sql

Web Dataऊपर वर्णित के रूप में अपनी मशीन पर एक के साथ पथ को बदलना सुनिश्चित करें ।


मेरे लिए बहुत अच्छा काम किया! और मैं विंडोज 10 पर डब्ल्यूएसएल के लिए एक प्लग देना चाहता हूं, जो अनिवार्य रूप से विंडोज-देशी समाधान बनाता है। क्या आप आयात करने के लिए आदेश भी साझा करेंगे?
tbc0

1
@ tbc0 मैंने आयात निर्देश भी जोड़े हैं। मैं WSL पर परीक्षण नहीं किया है, लेकिन यह सिद्धांत में काम करना चाहिए ...
विलियम Casarin

आपको 'चरित्र को संभालना पड़ सकता है। आप इसे function esc(s){gsub("\x27","\x27\x27",s);return s}$ 1 और $ 2 ====> esc ($ 1), esc ($ 2) के लिए अपने
योग में जोड़ सकते हैं

5

बिना किसी बाहरी टूल का उपयोग किए या रजिस्ट्री को संपादित किए बिना क्रोम सर्च इंजन सेटिंग्स को एक्सपोर्ट और इम्पोर्ट करने का एक सरल उपाय है:

  1. Chrome में खोज इंजन सेटिंग पृष्ठ खोलें ( chrome://settings/searchEngines)।
  2. Chrome डेवलपर टूल खोलें।
    • शॉर्टकट: F12 या Ctrl + Shift + I (विंडोज पर, अन्य प्लेटफार्मों पर शॉर्टकट अलग हो सकते हैं)।
    • मैनुअल नेविगेशन: ऊपरी-दाएं कोने में तीन-डॉट मेनू > अधिक उपकरण > डेवलपर उपकरण
  3. Chrome डेवलपर टूल के शीर्ष मेनू बार में कंसोल क्लिक करें
  4. कंसोल में निम्न स्क्रिप्ट में से एक को पेस्ट करें और Enter दबाएं

खोज इंजन सेटिंग्स के साथ एक JSON फ़ाइल डाउनलोड करने के लिए:

(function exportSEs() {
  /* Auxiliary function to download a file with the exported data */
  function downloadData(filename, data) {
    const file = new File([data], { type: 'text/json' });
    const elem = document.createElement('a');
    elem.href = URL.createObjectURL(file);
    elem.download = filename;
    elem.click();
  }

  /* Actual search engine export magic */
  settings.SearchEnginesBrowserProxyImpl.prototype.getSearchEnginesList()
    .then((searchEngines) => {
      downloadData('search_engines.json', JSON.stringify(searchEngines.others));
    });
}());

उपरोक्त स्क्रिप्ट का उपयोग करके बनाई गई JSON फ़ाइल से सेटिंग आयात करने के लिए:

(async function importSEs() {
  /* Auxiliary function to open a file selection dialog */
  function selectFileToRead() {
    return new Promise((resolve) => {
      const input = document.createElement('input');
      input.setAttribute('type', 'file');
      input.addEventListener('change', (e) => {
        resolve(e.target.files[0]);
      }, false);
      input.click();
    });
  }

  /* Auxiliary function to read data from a file */
  function readFile(file) {
    return new Promise((resolve) => {
      const reader = new FileReader();
      reader.addEventListener('load', (e) => {
        resolve(e.target.result);
      });
      reader.readAsText(file);
    });
  }

  const file = await selectFileToRead();
  const content = await readFile(file);
  const searchEngines = JSON.parse(content);
  searchEngines.forEach(({ name, keyword, url }) => {
    /* Actual search engine import magic */
    chrome.send('searchEngineEditStarted', [-1]);
    chrome.send('searchEngineEditCompleted', [name, keyword, url]);
  });
}());

टिप्पणियाँ

  • मैंने विंडोज 8.1 पर क्रोम 75.0.3770.100 में स्क्रिप्ट का परीक्षण किया।
  • स्क्रिप्ट निर्यात और आयात खोज अन्य खोज इंजन अनुभाग में ही लागू होती है, लेकिन उन्हें आसानी से डिफ़ॉल्ट खोज इंजन के रूप में अच्छी तरह से शामिल करने के लिए ट्विक किया जा सकता है।
  • स्क्रिप्ट को बुकमार्कलेट के रूप में वितरित करने का प्रयास न करें, बुकमार्क chrome://यूआरएल पर निष्पादित नहीं होते हैं (जैसा कि वहाँ किया गया है)।

इन निर्देशों ने मेरे लिए पूरी तरह से अच्छा काम किया, क्रोम संस्करण 74.
जेसन

शानदार, अभी भी v78 खिड़कियों पर काम करता है।
जूनवर

4

यह संभव है, लेकिन यह एक दर्द के लिए पर्याप्त है जिसे आप नहीं चाहते हैं।

  1. अपने Chrome प्रोफ़ाइल में वेब डेटा फ़ाइल ढूंढें। विंडोज 7 में यह यहाँ होगा: "%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default\Web Data"

  2. उबंटू में SQLite Studio या sqlite जैसे SQLite प्रोग्राम के साथ फ़ाइल खोलें (sudo apt-get install sqlite) और SQLite Studio में कीवर्ड टेबल निर्यात करें या लिनक्स में इस कमांड को चलाएँ: sqlite3 "Web Data" ".dump keywords" > keywords.sql SQLite स्टूडियो निर्यात संवाद

  3. क्या आपके सहकर्मी इस प्रक्रिया के विपरीत करते हुए कीवर्ड आयात करते हैं।

जैसा मैंने कहा, संभव है, लेकिन दर्दनाक।

मैंने HTML में SQL डेटा को लगभग सार्वभौमिक नेटस्केप बुकमार्क फ़ाइल प्रारूप में HTML में बदलने के लिए एक जावास्क्रिप्ट पार्सर लिखा (विडंबना यह है कि उस प्रारूप के लिए निश्चित मानक Microsoft लगता है) यदि आप फ़ायरफ़ॉक्स जैसे अन्य ब्राउज़रों में कीवर्ड प्राप्त करने में रुचि रखते हैं। या ओपेरा।

यदि आप एक वैकल्पिक समाधान में रुचि रखते हैं, तो मैंने आपको किसी भी ब्राउज़र में कस्टम खोज इंजन के एक ही सेट का उपयोग करने की अनुमति देने के लिए शॉर्टकट बनाया है, और मैं जल्द ही दूसरों के साथ साझा करने की क्षमता को लागू करने की योजना बना रहा हूं। कुछ ही दिनों में आने वाली रिलीज़ में मेरे द्वारा उल्लिखित आयात कोड होगा जैसे ही मैं नई विशेषताओं का परीक्षण कर रहा हूँ।


1
हालाँकि मैं चाहता हूँ कि Google ने इसे आसान बना दिया, लेकिन मैंने व्यक्तिगत रूप से महसूस नहीं किया "यह एक दर्द के लिए पर्याप्त है जिसे मैं कोशिश नहीं करना चाहता"। पैट्रिक का जवाब मेरे लिए बहुत मददगार था: superuser.com/a/688270/74576
रयान

विलियम का जवाब superuser.com/a/1350144/92959 पूरी तरह से आसान था। मुझे विलियम के साथ तुलना में पैट्रिक का जवाब बहुत जटिल लगा।
tbc0

2

मैंने अपनी Google Chrome खोज इंजन प्रविष्टियों को साझा करने के लिए अनुसरण किया और यह मेरे लिए बिल्कुल ठीक काम किया:

  1. विन्डोज़ XP : C: \ Documents and Settings \ MyUserName \ Local Settings \ Application Data \ Google \ Chrome \ User डेटा \ Default पर जाएं

    WINDOWS 7 : C: \ Users \ MyUserName \ AppData \ Local \ Google \ Chrome \ New डेटा डेटा डिफ़ॉल्ट पर जाएं

  2. इन 3 फ़ाइलों की प्रतिलिपि: Preferences, Web DataऔरWeb Data-journal

  3. उन 3 फाइलों को लक्ष्य मशीन पर रखें


मेरे लिए "वेब डेटा-जौनल" के बिना काम किया (बस "डिफ़ॉल्ट" फ़ोल्डर में दोनों फ़ाइल ड्रॉप करें, क्रोम को पुनरारंभ करें)
जिंसावेन

1

मैंने एक पाइथन स्क्रिप्ट लिखी है जो JSON डेटा से परिभाषाओं को लोड करती है। अब आप अपने कॉन्फ़िगरेशन को कोड के रूप में प्रबंधित कर सकते हैं:

https://gist.github.com/ninowalker/9952bf435f8acffa3ef59d6c538ca165

यह एक प्रकार का वृक्ष है (जैसे कई बार चलाया जा सकता है; कीवर्ड द्वारा डुप्लिकेट नहीं जोड़ा जा सकता है)।

Python2 और OSX के साथ काम करता है। अन्य प्लेटफार्मों का समर्थन करने के लिए संशोधित किया जा सकता है।


0

मेरे लिए, मैं विंडोज 10 पर हूं और मैं अपने पर्सनल क्रोम प्रोफाइल से सर्च कॉरपोरेट क्रोम प्रोफाइल में कॉपी करना चाहता था। मैंने निम्नलिखित कार्य किया:

  1. मैंने SQLite को https://www.sqlite.org/download.html ("Precompiled Binaries" के तहत "SQLite डेटाबेस फ़ाइलों के प्रबंधन के लिए कमांड लाइन टूल के बंडल") विवरण के साथ डाउनलोड किया। मैंने इसे c:\utilsअपने मार्ग में पहले से ही खोल दिया

  2. मैंने cmd.exe खोला

  3. मैंने निर्देशिका को अपने डिफ़ॉल्ट (व्यक्तिगत) क्रोम प्रोफ़ाइल में बदल दिया

    cd "%USERPROFILE%\AppData\Local\Google\Chrome\User Data\Default"

  4. मैंने Chrome को पूरी तरह से छोड़ दिया (यहां तक ​​कि ट्रे में भी)। इसके अलावा, इन निर्देशों की एक प्रति अपने पास रखें (या उन्हें किसी भिन्न ब्राउज़र में खोलें) क्योंकि आप उन्हें ढीला कर देंगे।

  5. मैंने निम्नलिखित भाग किया:

    sqlite3 "Web Data" ".dump keywords" > c:\keywords.sql

  6. मैं नई प्रोफ़ाइल में बदल गया:

    cd "..\Profile 2\"

  7. मैंने इसे चलाया:

    sqlite3.exe "Web Data" < c:\keywords.sql

    मुझे निम्नलिखित त्रुटियां मिलीं, जो ठीक हैं:

Error: near line 4: UNIQUE constraint failed: keywords.id Error: near line 5: UNIQUE constraint failed: keywords.id Error: near line 6: UNIQUE constraint failed: keywords.id Error: near line 7: UNIQUE constraint failed: keywords.id Error: near line 8: UNIQUE constraint failed: keywords.id

यदि आपको अधिक त्रुटियां मिलती हैं, तो इसका मतलब है कि आपने अपनी नई प्रोफ़ाइल में खोज इंजन को जोड़ा है। इन सभी को हटा दें, इन नए लोगों को भी शामिल किया गया है और इस चरण को फिर से चलाएं। या हाथ से SQL फ़ाइल को संपादित करें।

  1. मैंने Chrome को वापस निकाल दिया और अब मेरे खोज कीवर्ड ठीक काम करते हैं।

0

यह है कि मैं इसे कैसे करता हूं (मुझे याद नहीं है कि मैंने इसे कहां पाया था)।

  1. एक स्क्रिप्ट बनाएँ export_chrome_search_engines.sh:

    #!/bin/sh
    
    DESTINATION=${1:-./keywords.sql}
    TEMP_SQL_SCRIPT=/tmp/sync_chrome_sql_script
    echo "Exporting Chrome keywords to $DESTINATION..."
    cd ~/.config/google-chrome/Default
    echo .output $DESTINATION > $TEMP_SQL_SCRIPT
    echo .dump keywords >> $TEMP_SQL_SCRIPT
    sqlite3 -init $TEMP_SQL_SCRIPT Web\ Data .exit
    rm $TEMP_SQL_SCRIPT
    
  2. एक स्क्रिप्ट बनाएँ import_chrome_search_engines.sh:

    #!/bin/sh
    if ps -x | grep -v grep | grep Google\ Chrome > /dev/null; then
        echo "Close Chrome and try again..."
        exit 1
    fi
    
    SOURCE=${1:-./keywords.sql}
    #SOURCE=$1
    TEMP_SQL_SCRIPT=/tmp/sync_chrome_sql_script
    echo
    echo "Importing Chrome keywords from $SOURCE..."
    cd ~/.config/google-chrome/Default
    echo DROP TABLE IF EXISTS keywords\; > $TEMP_SQL_SCRIPT
    echo .read $SOURCE >> $TEMP_SQL_SCRIPT
    sqlite3 -init $TEMP_SQL_SCRIPT Web\ Data .exit
    rm $TEMP_SQL_SCRIPT
    
  3. उन्हें निष्पादन योग्य बनाएं:

    chmod +x export_chrome_search_engines.sh import_chrome_search_engines.sh 
    
  4. निर्यात करने के लिए, Chrome को बंद करें और चलाएं:

    ./export_chrome_search_engines.sh
    cp ~/.config/google-chrome/Default/keywords.sql /tmp/
    
  5. आयात करने के लिए, Chrome को बंद करें और चलाएं:

    cp /tmp/keywords.sql  ~/.config/google-chrome/Default
    ./import_chrome_search_engines.sh
    

-2

अब तक, नहीं, आप नहीं कर सकते। हालाँकि, आप अपने सहयोगियों के साथ बुकमार्क साझा कर सकते हैं।

Google बुकमार्क साझाकरण से लिंक करें अब तक, Google ऐप उपयोगकर्ता बुकमार्क, या बुकमार्क की सूची साझा करने में सक्षम नहीं हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.