मैं अजगर में एक फ़ंक्शन बनाने का एक तरीका ढूंढ रहा हूं जहां आप एक स्ट्रिंग में पास करते हैं और यह लौटाता है कि यह सही वर्तनी है या नहीं। मैं एक शब्दकोश के खिलाफ जांचना नहीं चाहता। इसके बजाय, मैं चाहता हूं कि यह Google के वर्तनी सुझावों को जांचें। इस तरह, सेलिब्रिटी नाम और अन्य विभिन्न उचित संज्ञाओं को सही वर्तनी के रूप में गिना जाएगा।Google का उपयोग करके पाइथन वर्तनी परीक्षक को कैसे कार्यान्वित करें "क्या आपका मतलब है?"
यहां पर जहां मैं अभी तक हूं। यह ज्यादातर समय काम करता है, लेकिन यह कुछ सेलिब्रिटी नामों के साथ गड़बड़ करता है। उदाहरण के लिए, "सीई लो हरी" या "पॉज़नर" जैसी चीजें गलत के रूप में चिह्नित होती हैं।
import httplib
import xml.dom.minidom
data = """
<spellrequest textalreadyclipped="0" ignoredups="0" ignoredigits="1" ignoreallcaps="1">
<text> %s </text>
</spellrequest>
"""
def spellCheck(word_to_spell):
con = httplib.HTTPSConnection("www.google.com")
con.request("POST", "/tbproxy/spell?lang=en", data % word_to_spell)
response = con.getresponse()
dom = xml.dom.minidom.parseString(response.read())
dom_data = dom.getElementsByTagName('spellresult')[0]
if dom_data.childNodes:
for child_node in dom_data.childNodes:
result = child_node.firstChild.data.split()
for word in result:
if word_to_spell.upper() == word.upper():
return True;
return False;
else:
return True;
सावधान: [5.3 आप सहमत होते हैं (या ऐक्सेस करने का प्रयास) जब तक आप विशेष रूप से एक अलग समझौते में ऐसा करने की अनुमति दी गई है, किसी भी इंटरफ़ेस के अलावा अर्थ यह है कि गूगल द्वारा प्रदान किए गए किसी भी सेवा को Google के साथ आप विशेष रूप से सहमत हैं कि किसी भी स्वचालित माध्यम (स्क्रिप्ट या वेब क्रॉलर के उपयोग सहित) के माध्यम से किसी भी सेवा को एक्सेस (या एक्सेस करने का प्रयास करें) और यह सुनिश्चित करेगा कि आप सेवाओं पर मौजूद किसी भी robots.txt फ़ाइल में निर्धारित निर्देशों का पालन करें। ।] (http://www.google.com/accounts/TOS) – sarnold
आप 'परिणाम' पर सही ढंग से पुन: प्रतीत नहीं होते हैं। – eumiro
https://bitbucket.org/mchaput/whoosh/wiki/Home – Surya