Portál AbcLinuxu, 9. května 2025 06:23

Dotaz: Python 3 http.client

9.8.2011 15:42 Karel Novotny
Python 3 http.client
Přečteno: 472×
Odpovědět | Admin
Dobry den, v python manualu pisou, ze ve ve verzi 3 byl modul httplib prejmenovan na http.client. Proc mi to ale potom zobrazuje nasledujici chybu?
root@bt:~# python3
Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
Traceback (most recent call last):
  File "< stdin >", line 1, in < module >
  File "http.py", line 3, in < module >
    import http.client
ImportError: No module named client
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

9.8.2011 16:09 l4m4
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin
Mi to funguje normálně (python 3.2). Máš ten python v pořádku nainstalován? Jiné moduly nachází?
9.8.2011 17:48 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Mam distribuci Backtrack 5, python tam byl jiz nainstalovany. Muze to byt tim, ze je to verze 3.1 a ne 3.2?
9.8.2011 19:20 l4m4
Rozbalit Rozbalit vše Re: Python 3 http.client
Verzí to není, http.client je i ve verzi 3.1.

Backtrack neznám. Pokud tam není součástí pythonu http/client.py, tak ho možná ořezali nebo rozdělili. Zkusil bych prohledat pythoní balíčky, někde to snad bude...
examon avatar 9.8.2011 17:49 examon | skóre: 15 | Trnava
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin
aj ja potvrdzujem, ze mi to ide ok (python 3.2.1)
9.8.2011 18:31 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin
V debianu je ale verze 3.1, muze to nekdo vyzkouset tam?
9.8.2011 18:43 nedam
Rozbalit Rozbalit vše Re: Python 3 http.client
taky funguje :P
9.8.2011 19:19 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ty jo, tak co muze byt pak spatne? Zkousel jsem preinstalovat python (balicek python3-all), ale bezuspesne.
10.8.2011 12:43 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin
Divam se, ze zrovna dnes ma vyjit nova verze me distribuce (Backtrack 5 R1), takze zkusim updovat a dam vedet.
10.8.2011 13:47 l4m4
Rozbalit Rozbalit vše Re: Python 3 http.client
Ten modul je normálně součástí pythonu. Pokud ho někdo vynechal nebo přesunul do samotatného balíku, nejspíš to udělal úmyslně, a v tom případě se to aktualizací nespraví.

BackTrack nemá podle všeho on-line informace o balíčcích - s takovými distribucemi je to pak těžké... Zjistit něco můžeš akorát, když si to nainstaluješ...
11.8.2011 14:37 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Tak jsem nabootoval ciste instalacni cd Backtracku a tam ten modul jde nahrat uplne v pohode. Nechapu jakym zpusobem se ale toto mohlo u meho systemu pokazit.
12.8.2011 15:30 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin
Tak jsem ucinil zajimavy objev, ktery si nedovedu vysvetlit:
root@bt:~# pwd
/root
root@bt:~# python3
Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
Traceback (most recent call last):
  File "< stdin >", line 1, in  < module >
  File "http.py", line 3, in < module >
    import http.client
ImportError: No module named client
>>> 
root@bt:~# cd xyz/
root@bt:~/xyz# python3
Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
>>> 
Pro ty, kterym se to nechce lustit: Pokud python3 spustim z ~/ adresare, tak modul http.client nejde nacist. Pokud se ale prepnu do jakekoliv podslozky (v tomto pripade xyz, ktera je prazda) a odtud spustim python3, tak modul jde nahrat v pohode.

Dokaze nekdo toto prosim vysvetlit?
12.8.2011 15:34 wr
Rozbalit Rozbalit vše Re: Python 3 http.client
Zkontroluj si PYTHONPATH v ~/.bashrc nebo ~/.bash_profile. Kdyz uspesne importujes klienta v adresari, tak si nech vypsat.

import sys sys.path
12.8.2011 15:46 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
PYTHONPATH nemam ani v jednom z tech souboru.

Systemove cesty viz:
root@bt:~/abc# python3
Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
>>> import sys
>>> sys.path
['', '/usr/lib/python3.1', '/usr/lib/python3.1/plat-linux2', '/usr/lib/python3.1/lib-dynload', '/usr/lib/python3.1/dist-packages', '/usr/local/lib/python3.1/dist-packages']
>>> 
Jeste jedna poznamka k chovani: Kdyz jsem do toho xyz adresare nakopiroval python skript, tak modul nesel nahrat, a nesel nahrat ani potom, co jsem python skript z adresare zase odstranil (WTF!). Proto nyni pouzivam adresar abc.
12.8.2011 15:59 wr
Rozbalit Rozbalit vše Re: Python 3 http.client
A proc vubec spoustis Python pod rootem? Jdi do adresare, kde ti nefunguje import http.client a do napis export PYTHONPATH=:/usr/lib/python3.1:/usr/lib/python3.1/plat-linux2:/usr/lib/python3.1/lib-dynload:/usr/lib/python3.1/dist-packages:/usr/local/lib/python3.1/dist-packages. Spust si python3 interpreter a proved import http.client.
12.8.2011 16:19 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Tak bohuzel:
root@bt:~/http# python3
Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
Traceback (most recent call last):
  File "< stdin >", line 1, in < module >
  File "http.py", line 3, in < module >
    import http.client
ImportError: No module named client
>>> 
root@bt:~/http# export PYTHONPATH=:/usr/lib/python3.1:/usr/lib/python3.1/plat-linux2:/usr/lib/python3.1/lib-dynload:/usr/lib/python3.1/dist-packages:/usr/local/lib/python3.1/dist-packages
root@bt:~/http# python3
Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
Traceback (most recent call last):
  File "< stdin >", line 1, in < module >
  File "http.py", line 3, in < module >
    import http.client
ImportError: No module named client
>>> 
Python spoustim pod rootem, protoze root je v Backtracku jediny defaultne nastaveny uzivatel. Na tento dany problem by ale nemelo mit vliv, pod jakym uzivatelem ten import provadim, ne?
12.8.2011 16:43 wr
Rozbalit Rozbalit vše Re: Python 3 http.client
Aha, uz vim, ty se snazis importovat http.client v adresari "http" coz nemuzes pokud je aktualni adres v sys.path (coz je, pokud skoustis klienta) a mas __init__.py v adresari. Koliduje to s aktualnim modulem knihovny. Prejmenuj si adresar "http" na neco jineho. Precti si PEP-0328 http://www.python.org/dev/peps/pep-0328/
12.8.2011 16:51 nedam
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin

A timto to byt nemuze? :)

adam@pcdes:~/smazat$ python3
Python 3.2.1 (default, Jul 11 2011, 12:37:47)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
>>>
adam@pcdes:~/smazat$ touch http.py
adam@pcdes:~/smazat$ python3
Python 3.2.1 (default, Jul 11 2011, 12:37:47)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import http.client
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: No module named client
>>>

12.8.2011 16:57 wr
Rozbalit Rozbalit vše Re: Python 3 http.client
nebo i tim :)
12.8.2011 17:07 Karel Novotny
Rozbalit Rozbalit vše Re: Python 3 http.client
Odpovědět | | Sbalit | Link | Blokovat | Admin
Ano mate pravdu oba dva, puvodne jsem mel skript http.py v adresari http :-D Jak jinak byste pojmenovali pythoni skript, ve kterem si procvicujete praci s HTTP;-) Po prejmenovani to uz funguje. Diky moc!

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.