У меня есть сценарий, который вызывает вызовы API. Чтобы ускорить сценарий, я попытался выполнить потоки.Fatal Python error: PyImport_GetModuleDict: нет словаря модуля
Приведенный ниже сценарий работает, когда я нахожусь в IDLE, однако, когда я пытаюсь запустить его с помощью sys argv из командной строки, я получил два типа ошибок, перечисленных ниже.
Ошибка 1
Fatal Python error: PyImport_GetModuleDict: no module dictionary!
This application has requests the Runtime to terminate it in an unusual way. Please contact the application's support team for more information.
Ошибка 2
Exception in thread Thread-1 (most likely raised during iterpreter shutdown):
Exception in thread Thread-2 (most likely raised during iterpreter shutdown):
Exception in thread Thread-3 (most likely raised during iterpreter shutdown):
Exception in thread Thread-5 (most likely raised during iterpreter shutdown):
Я не могу найти что-нибудь об этих ошибках. Таким образом, любая помощь приветствуется. Ниже приведена часть скрипта, который занимается потоковой обработкой.
import threading
import diffbot
urls = [[example.com],[example2.com]]
data = []
def getData(url):
x = diffbot.classify(url)
data.append(x)
def doWork(urls):
for element in urls:
for url in element:
t = threading.Thread(target=getData, args=(url,))
t.daemon = True
t.start()
doWork(urls)
Из-за ошибки в первом сообщении об ошибке, я предполагаю, что вы в Windows. Я бы добавил эту информацию (возможно, отметьте также вопрос «окна»). Также добавьте: какую версию Python вы используете, точно как вы запускаете скрипт, независимо от того, ведут ли другие скрипты Python в обычном режиме, независимо от того, использует ли интерактивное использование diffbot (то есть в оболочке Python) ошибку ... –