मैंने अभी ऐसी चीज बनाई है। यहां मेरी प्रक्रिया का एक ब्रेक डाउन है।
मुझे विभिन्न वेब पृष्ठों से उद्धरणों की एक सूची रखने और प्रत्येक उद्धरण में कुछ जानकारी जोड़ने की आवश्यकता है।
मेरे बुकमार्कलेट गतिशील एक गूगल प्रपत्र उत्पन्न होगा (मैं सिर्फ इतना है कि मैं पहले से बनाए गए वास्तविक गूगल प्रपत्र के स्रोत देखा है), यह स्वचालित रूप से वर्तमान यूआरएल भर देंगे, पृष्ठ शीर्षक, और से वर्तमान में चयनित टेक्स्ट सबमिट किया जाएगा।
चूंकि मुझे मैन्युअल रूप से जानकारी जोड़ने की आवश्यकता है, इसलिए मुझे जानबूझकर कम से कम एक आवश्यक फ़ील्ड शामिल नहीं किया गया है, इसलिए मुझे एक त्रुटि संदेश के साथ Google फॉर्म प्राप्त होता है (लेकिन यूआरएल के साथ, शीर्षक & उद्धरण पहले से भर चुका है)। अब मैं मैन्युअल रूप से अन्य सभी जानकारी जोड़ सकता हूं जो मुझे चाहिए और फॉर्म जमा करें।
यदि बुकमार्कलेट सभी आवश्यक फ़ील्ड भरता है तो आपको केवल Google फॉर्म सफलता प्रतिक्रिया प्राप्त होगी "धन्यवाद! आपकी प्रतिक्रिया दर्ज की गई है।"
मैं निम्नलिखित साइट का उपयोग किया है एक बुकमार्कलेट कि jQuery का उपयोग उत्पन्न करने के लिए: http://benalman.com/code/test/jquery-run-code-bookmarklet/ (मैं jQuery का उपयोग कर रहा अतिरिक्त जानकारी वेबपेज से & सामग्री स्क्रैप करने के लिए सक्षम होने के लिए)
उपयोग करने के लिए सक्षम होने के लिए कि साइट सही, आप अपने एक लाइनर एचटीएमएल से बचने के लिए होगा (आप उपयोग कर सकते हैं इस escape tool)
आवश्यक कदम हैं:
- प्रपत्र का स्रोत एक Google फ़ॉर्म बनाएं/स्प्रेडशीट
- देखें और क्षेत्रों आप बुकमार्कलेट
- अपने html एस्केप भरने और अपनी स्क्रिप्ट है कि जानकारी को भरने लिखने के this उपयोग करना चाहते हैं कॉपी, इस साइट का निर्माण करेगा बुकमार्कलेट के लिए आप
मेरे मामले में
तो:
1. मैं एक रूप है कि एक पाठ क्षेत्र में शामिल uRL रखने के लिए बनाने के बाद, एक और पाठ क्षेत्र पृष्ठ के शीर्षक धारण करने के लिए, एक उद्धरण रखने के लिए अनुच्छेद पाठ (चयन करें एड टेक्स्ट)। फ़ॉर्म में कुछ अन्य आवश्यक फ़ील्ड भी शामिल हैं जिन्हें मैं मैन्युअल रूप से भरता हूं।
2. मैं निम्नलिखित एचटीएमएल तैयार:
<form method="POST"
action="https://spreadsheets.google.com/spreadsheet/formResponse?formkey=XYZXYZXYZXYZXYZXYZXYZ&ifq">
<input type="text" name="entry.0.single" value="" id="entry_0" />
<input type="text" name="entry.3.single" value="" id="entry_3" />
<textarea name="entry.2.single" id="entry_2"></textarea>
<input type="submit" name="submit" value="submit" />
</form>
(entry_0 - यूआरएल, entry_3 - पृष्ठ शीर्षक, entry_2 - उद्धरण)
3. एक पंक्ति में डालने के बाद और इसे से बचमैंने निम्नलिखित स्क्रिप्ट का उपयोग किया है:
frm = $(unescape('%3Cform%20action%3D%22https%3A//spreadsheets.google.com/spreadsheet/formResponse%3Fformkey%3DXYZXYZXYZXYZXYZXYZXYZ%26amp%3Bifq%22%20method%3D%22POST%22%3E%0A%3Cinput%20type%3D%22text%22%20name%3D%22entry.0.single%22%20value%3D%22%22%20id%3D%22entry_0%22%20/%3E%0A%3Cinput%20type%3D%22text%22%20name%3D%22entry.3.single%22%20value%3D%22%22%20id%3D%22entry_3%22%20/%3E%0A%3Ctextarea%20name%3D%22entry.2.single%22%20id%3D%22entry_2%22%3E%3C/textarea%3E%0A%3Cinput%20type%3D%22submit%22%20name%3D%22submit%22%20value%3D%22submit%22%20/%3E%0A%3C/form%3E'));
$(frm).children('#entry_0').attr('value',location.href);
$(frm).children('#entry_3').attr('value',$('title')[0].innerHTML);
$(frm).children('#entry_2').html(window.getSelection().toString());
$(frm).children('input[type=submit]').click()
इस विधि का क्रोम के साथ परीक्षण किया गया है। शुभकामनाएँ!
फ़ायरफ़ॉक्स, उपयोग libcurl साथ 405 समस्या को हल करने। PHP और पायथन में ऐसा करने में सक्षम होना चाहिए। – razorsniper
उपयोगी लिंक: http://eureka.ykyuen.info/2014/07/30/submit-google-forms-by-curl-command/ –