我有一个数据框,其中一列的每一行都有一个字符串列表。
平均而言,每个列表有 150 个单词,每个单词大约 6 个字符。
数据框的 700 行中的每一行都是关于一个文档的,每个字符串都是该文档的一个单词;所以基本上我已经标记了文件的文字。
我想检测每个文档的语言,为此我首先尝试检测文档中每个单词的语言。
出于这个原因,我执行以下操作:
from textblob import TextBlob
def lang_detect(document):
lang_count = {}
for word in document:
if len(word) >= 4:
word_textblob = TextBlob(word)
lang_result = word_textblob.detect_language()
response = lang_count.get(lang_result)
if response is None:
lang_count[f"{lang_result}"] = 1
else:
lang_count[f"{lang_result}"] += 1
return lang_count
df_per_doc['languages_count'] = df_per_doc['complete_text'].apply(lambda x: lang_detect(x))
当我这样做时,我收到以下错误:
---------------------------------------------------------------------------
HTTPError Traceback (most recent call last)
<ipython-input-42-772df3809bcb> in <module>
25
---> 27 df_per_doc['languages_count'] = df_per_doc['complete_text'].apply(lambda x: lang_detect(x))
28
29
.
.
.
647 class HTTPDefaultErrorHandler(BaseHandler):
648 def http_error_default(self, req, fp, code, msg, hdrs):
--> 649 raise HTTPError(req.full_url, code, msg, hdrs, fp)
650
651 class HTTPRedirectHandler(BaseHandler):
HTTPError: HTTP Error 429: Too Many Requests
错误要长得多,我在中间省略了其余部分。
现在,即使我尝试仅对两个文档/行执行此操作,我也会遇到相同的错误。
有什么方法可以让我得到textblob
更多文字和文件的回复?