Ошибка импорта скрипта Ubuntu с использованием газетного модуля - PullRequest
0 голосов
/ 24 октября 2018

У меня есть скрипт, который будет запускаться локально, но не на моем сервере Ubuntu.Другие сценарии работают нормально на обеих платформах, но этот специфический скрипт выдает ошибку импорта, когда я пытаюсь запустить его в Ubuntu.

root@ip-xxx-xx-xx-xxx:~# /usr/bin/python3.5 /opt/script_folder/main.py
Traceback (most recent call last):
  File "/opt/script_folder/main.py", line 2, in <module>
    import process
  File "/opt/script_folder/process.py", line 25, in <module>
    from tools.getImages import getImages
  File "/opt/script_folder/tools/getImages.py", line 5, in <module>
    from newspaper import Article
  File "/usr/local/lib/python3.5/site-packages/newspaper/__init__.py", line 10, in <module>
    from .api import (build, build_article, fulltext, hot, languages,
  File "/usr/local/lib/python3.5/site-packages/newspaper/api.py", line 14, in <module>
    from .article import Article
  File "/usr/local/lib/python3.5/site-packages/newspaper/article.py", line 15, in <module>
    from . import network
  File "/usr/local/lib/python3.5/site-packages/newspaper/network.py", line 14, in <module>
    from .configuration import Configuration
  File "/usr/local/lib/python3.5/site-packages/newspaper/configuration.py", line 15, in <module>
    from .parsers import Parser
  File "/usr/local/lib/python3.5/site-packages/newspaper/parsers.py", line 10, in <module>
    import lxml.etree
ImportError: No module named 'lxml.etree'

Другие сценарии работают нормально, и у меня не было этой проблемы, пока я не попытался использовать библиотеку газет.Я попытался сделать следующее:

  • pip3 установить --upgrade magazine3k
  • pip3 установить --upgrade lxml
  • добавив / usr / local / lib /python3.5 / site-packages to $ PATH
  • , работающий в виртуальной среде и выключенный
  • импортирующий lxml.etree непосредственно в сценарий
  • , работающий на python3.5 терминал - нет выданных ошибок
  • apt-get удалить python3.5, удалить pip3 magazine3k, установить pip3 magazine3k, apt-получить установить python3.5
  • проверенные разрешенияпапки site-packages
  • проверил путь к библиотеке по умолчанию, который использует python3.5
  • , гарантировал, что hashbang #! / usr / bin / env python3.5 находится наначало всех файлов
  • sudo apt-get install python-lxml

Я в тупике.Любое руководство будет высоко ценится.


РЕДАКТИРОВАТЬ: Я также следовал инструкциям, перечисленным здесь: https://newspaper.readthedocs.io/en/latest/ Все загружено правильно, за исключением следующего:

root@ip-xxx-xx-xx-xxx:~# curl https://raw.githubusercontent.com/codelucas/newspaper/master/download_corpora.py | python3
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     100   657  100   657    0     0   9387      0 --:--:-- --:--:-- --:--:-- 10265
Traceback (most recent call last):
  File "<stdin>", line 6, in <module>
  File "/usr/local/lib/python3.5/site-packages/nltk/__init__.py", line 137, in <module>
    from nltk.stem import *
  File "/usr/local/lib/python3.5/site-packages/nltk/stem/__init__.py", line 29, in <module>
    from nltk.stem.snowball import SnowballStemmer
  File "/usr/local/lib/python3.5/site-packages/nltk/stem/snowball.py", line 32, in <module>
    from nltk.corpus import stopwords
  File "/usr/local/lib/python3.5/site-packages/nltk/corpus/__init__.py", line 66, in <module>
    from nltk.corpus.reader import *
  File "/usr/local/lib/python3.5/site-packages/nltk/corpus/reader/__init__.py", line 105, in <module>
    from nltk.corpus.reader.panlex_lite import *
  File "/usr/local/lib/python3.5/site-packages/nltk/corpus/reader/panlex_lite.py", line 15, in <module>
    import sqlite3
  File "/usr/local/lib/python3.5/sqlite3/__init__.py", line 23, in <module>
    from sqlite3.dbapi2 import *
  File "/usr/local/lib/python3.5/sqlite3/dbapi2.py", line 27, in <module>
    from _sqlite3 import *
ImportError: No module named '_sqlite3'

1 Ответ

0 голосов
/ 23 декабря 2018

в зависимости от вашего поста кажется, что проблема может быть в том, что среда ubuntu отличается от других (mac os?) Локальных сред.Я предполагаю, что вы получили газету Газета3k для правильной установки в средах Mac OS, но не в Ubuntu?

Возможно, сначала попробуйте руководство в этом посте, ImportError: В python3.3 нет модуля с именем '_sqlite3'

Я думаю, что основная проблема заключается в том, что в вашей среде ubuntu отсутствуют некоторые важные базовые пакеты, которые требуются этим библиотекам python.

Или, возможно: apt-get install sqlite3<br> sqlite3 -version<br> apt-get install python-pysqlite2<br> apt-get install python-pysqlite2-dbg<br> apt-get install libsqlite3-dev<br> apt-get install sqlite<br> pip install pysqlite

...