Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 18.08.2023
Сообщений: 5

urlparse и python3

18.08.2023, 16:54. Показов 1163. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
День добрый.
Прошу не закидывать тапками ибо не программист ни разу, а телефонист. Хотя в нынешних реалиях одно без другого никак уже.
Решила сунуть нос в ari-py для астериска, но споткнулась уже на первых шагах.
При запуске тестового скрипта в виртуальной среде ругается на "ModuleNotFoundError: No module named 'urlparse'" в файлах __init__.py и client.py.
Python 3.11.2
urlparse3 1.1

интернеты страны говорят (https://pypi.org/project/urlparse3/), что для urlparse3

Python
1
2
import urlparse3
parsed_url = urlparse3.parse_url(url)
нашла их, поменяла в файлах.
было
Python
1
2
import urlparse
split = urlparse3.urlsplit(base_url)
стало
Python
1
2
import urlparse3
split = urlparse3.parse_url(base_url)
но при запуске скрипта ситуация не изменилась.
подскажите, пожалуйста, может надо что-то перезапустить чтобы изменения вступили в силу? или направление, где почитать еще.
спасибо
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.08.2023, 16:54
Ответы с готовыми решениями:

Как получить строку без списка после urlparse.parse_qs()?
В общем-то есть у меня определённый стринг в виде урл параметров, я его парсю при помощи urlparse.parse_qs далее пытаюсь вывести типа ...

С использованием urlparse получить из адреса кортеж значений
Считать с клавиатуры полный адрес англоязычной html страницы. С использованием urlparse получить из адреса кортеж значений. Получить с...

В терминале есть установленная версия Python3 а в списке приложений Python3 нет на Debian
Как сделать так что б в списке приложений то же был Python3 на Debian

8
 Аватар для s_t_r_a_j
526 / 179 / 58
Регистрация: 12.02.2023
Сообщений: 641
18.08.2023, 17:27
urlparse3 не адаптирован под python 3.х
поэтому проще используйте urllib.parse
Python
1
2
3
from urllib.parse import urlparse
url = urlparse('https://docs-python.ru:80/search/')
print(url)
0
0 / 0 / 0
Регистрация: 18.08.2023
Сообщений: 5
18.08.2023, 17:37  [ТС]
у меня
pip list
Package Version
------------------ ---------
ari 0.1.3
ari 0.1.3
ari 0.1.3
certifi 2023.7.22
charset-normalizer 3.2.0
gevent 23.7.0
greenlet 2.0.2
idna 3.4
pip 23.0.1
requests 2.31.0
setuptools 66.1.1
swaggerpy 0.2.1
urllib3 2.0.4
urlparse3 1.1
websocket-client 1.6.1
zope.event 5.0
zope.interface 6.0


urllib3 2.0.4 - это оно? или надо еще ставить вот прямо urllib?
0
 Аватар для s_t_r_a_j
526 / 179 / 58
Регистрация: 12.02.2023
Сообщений: 641
18.08.2023, 18:12
Цитата Сообщение от anvista_exe Посмотреть сообщение
это оно
это оно
0
0 / 0 / 0
Регистрация: 18.08.2023
Сообщений: 5
22.08.2023, 11:53  [ТС]
Есть подозрения, что либо я все-таки нашла не те файлы, либо они еще на что-то ссылаются.
Последовала Вашему совету, тестовый скрипт, который Вы привели в качестве примера, запускается на ура без ругани.
а скрипт с ari, ругается все также.

root@PBX:/usr/src/PyProject/ARI# ./test.py
ParseResult(scheme='https', netloc='docs-python.ru:80', path='/search/', params='', query='', fragment='')

main.py
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#!/usr/src/PyProject/ARI/bin/python3
 
import requests
import ari
from requests import HTTPError
from urllib.parse import urlparse
 
client = ari.connect('http://localhost:8088','admin','test')
 
def on_dtmf(channel, event):
    digit = event['digit']
    if digit == '#':
        channel.play(media='sound:ru/goodbye')
        channel.continueInDialplan()
    elif digit == '*':
        channel.play(media='sound:ru/hello')
    else:
        channel.play(media='sound:ru/digits/%s' % digit)
 
 
def on_start(channel, event):
    channel.on_event('ChannelDtmfReceived', on_dtmf)
    channel.answer()
    channel.play(media='sound:hello-world')
 
 
client.on_channel_event('StasisStart', on_start)
client.run(apps="hello")
root@PBX:/usr/src/PyProject/ARI# ./main.py
File "/usr/src/PyProject/ARI/./main.py", line 4, in <module>
import ari
File "/usr/src/PyProject/ARI/lib/python3.11/site-packages/ari-0.1.3-py3.11.egg/ari/__init__.py", line 8, in <module>
File "/usr/src/PyProject/ARI/lib/python3.11/site-packages/ari-0.1.3-py3.11.egg/ari/client.py", line 10, in <module>
ModuleNotFoundError: No module named 'urlparse'


файл /usr/src/PyProject/ARI/lib/python3.11/site-packages/ari-0.1.3-py3.11.egg
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 Length   Method    Size  Cmpr    Date    Time   CRC-32   Name
--------  ------  ------- ---- ---------- ----- --------  ----
    5478  Defl:N     2451  55% 2023-08-17 16:27 09b1fca4  EGG-INFO/PKG-INFO
     244  Defl:N      149  39% 2023-08-17 16:27 5f79371a  EGG-INFO/SOURCES.txt
       1  Defl:N        3 -200% 2023-08-17 16:27 32d70693  EGG-INFO/dependency_links.txt
      10  Defl:N       12 -20% 2023-08-17 16:27 f7aac686  EGG-INFO/requires.txt
       4  Defl:N        6 -50% 2023-08-17 16:27 a141cab4  EGG-INFO/top_level.txt
       1  Defl:N        3 -200% 2023-08-17 16:27 32d70693  EGG-INFO/zip-safe
     633  Defl:N      330  48% 2023-08-17 16:20 816ef5c7  ari/__init__.py
   11612  Defl:N     2591  78% 2023-08-17 16:20 c4628b26  ari/client.py
   11646  Defl:N     2762  76% 2023-08-17 16:20 7094d87f  ari/model.py
    1071  Defl:N      690  36% 2023-08-17 16:27 c11f644c  ari/__pycache__/__init__.cpython-311.pyc
   16073  Defl:N     5900  63% 2023-08-17 16:27 cc4de1d2  ari/__pycache__/client.cpython-311.pyc
   18984  Defl:N     6521  66% 2023-08-17 16:27 0ba8bc40  ari/__pycache__/model.cpython-311.pyc
--------          -------  ---                            -------
   65757            21418  67%                            12 files
файл ari/__init__.py

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#
# Copyright (c) 2013, Digium, Inc.
#
"""ARI client library
"""
 
import ari.client
import swaggerpy.http_client
#import urlparse
from urllib.parse import urlparse
 
Client = client.Client
 
 
def connect(base_url, username, password):
    """Helper method for easily connecting to ARI.
 
    :param base_url: Base URL for Asterisk HTTP server (http://localhost:8088/)
    :param username: ARI username
    :param password: ARI password.
    :return:
    """
#    split = urlparse.urlsplit(base_url)
    split = urlparse(base_url)
    http_client = swaggerpy.http_client.SynchronousHttpClient()
    http_client.set_basic_auth(split.hostname, username, password)
    return Client(base_url, http_client)
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
22.08.2023, 15:17
Похоже, библиотека ari-py слишком старая для питона 3.11.
0
0 / 0 / 0
Регистрация: 18.08.2023
Сообщений: 5
22.08.2023, 15:42  [ТС]
какой посоветуете на вскидку?
0
 Аватар для kazak
3604 / 2744 / 356
Регистрация: 11.03.2009
Сообщений: 6,306
22.08.2023, 19:54
Не все знакомы с ARI) Поиск выдал https://github.com/M-o-a-T/asyncari, подойдет или нет это Вам решать.
Также есть вариант установить более раннюю версию питона. Последний комит для ari-py был в 2014 году, соответственно Python 3.4 - 3.6
0
0 / 0 / 0
Регистрация: 18.08.2023
Сообщений: 5
23.08.2023, 09:12  [ТС]
спасибо большое. буду пробовать
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.08.2023, 09:12
Помогаю со студенческими работами здесь

Импорт python3-библиотек в python3.7
Здравствуйте! Такая проблема - не могу имортировать либы 3 питона внутри 3.7 версии. Сижу на elementary os 0.4, по умолчанию установлена...

Unicode Python3
Как известно все строки в 3 питоне являются unicode. Но в моём скрипте что то пошло не так :) Программа собирает информацию о друзьях...

Pygame python3.x
Есть ли вообще pygame на любой третьей версии пайтона? (Обязательно на ubuntu)

Python3 NameError
Здравствуйте! Сегодня решил заняться изучением python3 и при помощи интернета решил собрать небольшую игрушку. import sys import...

Python3 cookies
Помогите отправить куки на сайт, как прикрепить их к запросу? import csv,cgi import urllib.request import http.cookies from...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значений справочника
Maks 21.03.2026
Установка программного отбора значений справочника "Сотрудники" из модуля формы документа. В качестве фильтра для отбора служит предопределенное значение перечислений. Процедура. . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru