Проблема с исходным кодом urllib в Eclipse? - PullRequest
0 голосов
/ 31 января 2019

У меня странная проблема, из-за которой Eclipse выдает ошибку для исходного кода пакета Python Lib.Я использую Python 3.7.1.

Соответствующая строка:

import urllib.request.urlopen as uReq

Я не верю, что используемый мной интерпретатор Python имеет отношение к этой конкретной проблеме.Тем не менее, вот код для этого.(Я знаю, это, вероятно, ужасно. Если вы знаете лучший способ сделать это, пожалуйста, укажите мне правильное направление; я впервые использую Jython, и я уверен, что это видно.)

interpreter = new PythonInterpreter();
interpreter.exec("import sys");
interpreter.exec("import os");
interpreter.exec("sys.path.insert(0, os.getcwd() + '\\src\\python')");
interpreter.exec("sys.path.insert(0, os.getcwd() + '\\Lib')");
interpreter.exec("sys.path.insert(0, os.getcwd() + '\\Lib\\site-packages')");
interpreter.exec("print(sys.path[0])");
interpreter.exec("from myscraper import validateUrl");

Ошибка:

Exception in thread "AWT-EventQueue-0" Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Users\...\ThreadTracker\src\python\myscraper.py", line 6, in <module>
import urllib.request.urlopen as uReq
SyntaxError: ("mismatched input ',' expecting NAME", 
('C:\\Users\\...\\ThreadTracker\\Lib\\urllib\\request.py', 140, 13, '            
*, cafile=None, capath=None, cadefault=False, context=None):\n'))

Похоже, что возникла проблема с этой строкой кода из исходного файла:

def urlopen(url, data=None, timeout=socket._GLOBAL_DEFAULT_TIMEOUT,
        *, cafile=None, capath=None, cadefault=False, context=None):

Я видел в другом посте, что можно использовать urllib3также я попытался:

из запроса на импорт urllib3 как uReq

Но возникла собственная ошибка:

Exception in thread "AWT-EventQueue-0" Traceback (most recent call last):
File "<string>", line 1, in <module>
File "C:\Users\Christina\ThreadTracker\src\python\myscraper.py", line 6, in <module>
from urllib3 import request as uReq
File "C:\Users\Christina\ThreadTracker\Lib\site-packages\urllib3\__init__.py", line 8, in <module>
from .connectionpool import (
File "C:\Users\Christina\ThreadTracker\Lib\site-packages\urllib3\connectionpool.py", line 3, in <module>
import logging
SyntaxError: ("no viable alternative at input '='", ('C:\\Users\\Christina\\ThreadTracker\\Lib\\logging\\__init__.py', 261, 55, '                      method_name, "method:", err, file=sys.stderr)\n'))

Я очень запуталсяпочему я получаю ошибки из исходного кода ... И у меня было немало времени, пытаясь заставить работать интеграцию java-python.

...