Я использую эту библиотеку уже 4 месяца, но сегодня, когда я попытался импортировать модуль automagica, он не работает должным образом

Я пытаюсь создать файл Excel и автоматически заполнять данные с помощью automagica, но это не работает. Пожалуйста, помогите мне с этой проблемой

Вот мой код:

from automagica import *

excel = Excel()


# Write to cell A1, this is column 1, row 1
excel.write_cell(1, 1, "Name")

# Write to cell, B1, this is column 2, row 1
excel.write_cell(2, 1, "Address")

# Write to cell, B1, this is column 3, row 1
excel.write_cell(3, 1, "Company")

# Write to cell A2, this is column 1, row 2
excel.write_cell(1, 2, generate_random_name())

# Write to cell A3, this is column 1, row 3
excel.write_cell(1, 3, generate_random_name())

# Write to cell A4, this is column 1, row 4
excel.write_cell(1, 4, generate_random_name())

# Write to cell A5, this is column 1, row 5
excel.write_cell(1, 5, generate_random_name())

# Write to cell A6, this is column 1, row 6
excel.write_cell(1, 6, generate_random_name())

# Write to cells B2, B3, B4, B5 and B6. This is row 2, cells 2 to 6
for i in range(2,7):
    excel.write_cell(2,i,generate_random_address())

# Write to cell range C2:C6. This is row 3, cells 2 to 6
excel.write_range('C2:C6', "Example Company")

# Declare path to save it to, in this case in the homedir with the name "awesome_excel.xlsx"
excel_save_path = home_path(r'D:\suneel\WFH work\Automagica\awesome_excel.xlsx')

# Save the worksheet, by default this is in the homedir
excel.save_as(excel_save_path)

excel.quit()

open_file(excel_save_path)

Ошибки:

Заранее спасибо.

Я согласен, что полезно знать, почему, но в качестве решения проблема решается, если вы просто переустановите его? pip install automagica

Paul Wilson 18.12.2020 11:46

Я думаю, что компания Netcall сделала этот продукт платным, поэтому удалила этот модуль из PIP. Этот модуль содержит пустой пакет, внутри нет файлов Python.

Arty 18.12.2020 12:17

Согласно этот модуль истории был обновлен 16 октября, все предыдущие версии были удалены, а текущая версия была заменена пустым пакетом. Такого рода вещи обычно делаются, когда компания хочет сделать проект несвободным/не с открытым исходным кодом, удаляет его исходники.

Arty 18.12.2020 12:26

@SuneelKumar Нашел решение, как установить ваш модуль из предыдущей истории этого проекта на github, пожалуйста, посмотрите мой ответ.

Arty 18.12.2020 13:05
Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
1
4
169
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Похоже, что внутри пакет репозитория PIP был удален компанией Netcall, вероятно, они сделали этот продукт несвободным и удалили его исходники.

Остается только пустой pip-пакет, поэтому модуль по-прежнему устанавливается pip-пакетом, но не содержит исходников внутри. Согласно этот пакет истории был удален 16 октября.

Но для этого модуля PIP еще есть проект на github, здесь. Его исходники также были удалены 13 октября. Но история git не была удалена, я покажу следующие шаги, как установить модуль pip из предыдущей истории git.

Выполните следующие шаги внутри командной строки (где-то во временном или доступном для записи каталоге):

git clone https://github.com/automagica/automagica/
cd automagica
git checkout master
git reset --hard ae8a184

Это позволит проверить репозиторий git не позднее (ae8a184) коммита непосредственно перед удалением исходников.

Теперь выполните следующую команду (внутри проверенного репозитория git (папка automagica)):

python -m pip install -e .

Это установит модуль pip из репозитория github. Сделанный!

Примечание!. Вы также можете сохранить проверенный git-репозиторий (папка automagica) где-нибудь в своих архивах, я уверен, что вскоре компания удалит и этот git-репозиторий, если они действительно хотят сделать проект закрытым.

Если последняя команда установки выше по какой-то причине не удалась, выполните следующие шаги в проверенном репозитории git (папка automagica):

python setup.py bdist_wheel

Эта команда создаст/скопирует исходники проекта в пакет колеса PIP. Если команда выполнена успешно, перейдите в подпапку ./dist/, там будет файл с расширением .whl, как Automagica-3.2.2-py3-none-any.whl на моем ПК. Просто установите его с помощью следующей команды pip:

python -m pip install Automagica-3.2.2-py3-none-any.whl

Самая последняя команда работала на моем ПК с Windows, а затем import automagica работала внутри кода Python.

Спасибо за ваше время. Я успешно установил модуль automagica, следуя вашим инструкциям. когда я пытался импортировать в командной строке, он работал нормально. но на платформах python IDLE и anaconda возникает такая же ошибка (нет модуля с именем «automagica»)

Suneel Kumar 19.12.2020 09:18

@SuneelKumar Это потому, что через командную строку, которую вы установили в глобальный Python, существует единственная установка такого Python. Но на других платформах есть своя виртуальная среда, т.е. отдельный питон. Вы должны прочитать документацию о том, как установить в эту среду из командной строки. Другой способ — создать .whl файл по инструкциям, которые я дал, и попытаться сделать pip install filename.whl изнутри этих двух платформ, это должно решить проблему. В любом случае расскажите мне о своем прогрессе, как только попробуете, наконец-то мы решим проблему!

Arty 19.12.2020 09:59

Привет, Арти, я создал виртуальную среду, а затем успешно установил ее, следуя вашим инструкциям. Но все же я получаю ту же ошибку. Я действительно не знаю, где я пропал.

Suneel Kumar 22.12.2020 05:27

@SuneelKumar Выполните следующие шаги: 1) создайте .whl файл, как я указал в своем ответе 2) перейдите на свою платформу (IDLE) 3) если это графическая IDE, то где-то должно быть что-то вроде «Установить пакет в меню» или, может быть, командная строка Python 4 ) Выполните такую ​​командную строку из меню, а затем введите python -m pip install filename.whl. 5) В противном случае, если это не сработает, вы должны погуглить что-то вроде IDLE how to install python wheel и следовать инструкциям.

Arty 22.12.2020 05:30

@SuneelKumar Вы даже можете сделать следующее, в своем сценарии использования сделайте import subprocess; subprocess.run(['python', '-m', 'pip', 'install', 'filename.whl'], check = True); import automagica. Это установит ваш пакет прямо перед его импортом, он должен работать. После первого успешного запуска вы можете удалить вызов подпроцесса.

Arty 22.12.2020 05:45

Спасибо, Арти, теперь все работает нормально...................... Большое спасибо за ваше время и терпение.

Suneel Kumar 22.12.2020 13:17

Другие вопросы по теме