Article View: pl.comp.lang.python
Article #27877pobieranie pliku + autoryzacja
From: Desper0
Date: Wed, 12 Jan 2011 23:18
Date: Wed, 12 Jan 2011 23:18
42 lines
2800 bytes
2800 bytes
Witam,
chciałbym napisac skrypt (jeden z pierwszych w Pythonie ), który
umożliwiłby mi pobranie pliku xml ze strony wymagającej podania
loginu i hasła,
nie ma problemu aby napisać to np. w PHP uzyc wgeta :
wget --http-user=login" -O "data.xml" --http-passwd=haslo
http://www.sss.com/Log/ProxyXML.aspx?type=xml
i napisać parsera, ale chciałbym to napisac w pythonie, którego
chciałbym poznać lepiej.
tak wygląda cały skrypt: Python 3.1 MS Windows XP
-------------------8<--------------------------------------------------------
import urllib.request
url2='http://www.sss.com/Log/ProxyXML.aspx?type=xml'
password_mgr = urllib.request.HTTPPasswordMgrWithDefaultRealm()
password_mgr.add_password(None, url2, 'user_name', 'password')
handler = urllib.request.HTTPBasicAuthHandler(password_mgr)
opener = urllib.request.build_opener(handler)
opener.open(url2)
urllib.request.install_opener(opener)
req = urllib.request.Request(url2)
try: response = urllib.request.urlopen(req)
except urllib.error.URLError as e:
print(e)
the_page = response.read()
---------------------------------------8<-----------------------------------------------------
Oraz komunikat błędu:
HTTP Error 401: Unauthorized
Traceback (most recent call last):
File "D:\workspace\parsXml\src\parser.py", line 40, in <module>
the_page = response.read()
NameError: name 'response' is not defined
Wciąż brak autoryzacji,
w czym może tkwić problem ?
Pisząc skrypt używałem dokumentacji do wersji 3.x
http://docs.activestate.com/activepython/3.1/python/howto/urllib2.html
TIA
Technical Details
Message-ID:
<e62ff482-6c5b-4eef-b0d4-fcccb68a182e@j29g2000yqm.googlegroups.com>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!plix.pl!newsfeed1.plix.pl!news-out1.kabelfoon.nl!newsfeed.kabelfoon.nl!bandi.nntp.kabelfoon.nl!198.186.194.249.MISMATCH!news-out.readnews.com!transit3.readnews.com!postnews.google.com!j29g2000yqm.googlegroups.com!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.rmf.pl!nf1.ipartners.pl!ipartners.pl!plix.pl!newsfeed1.plix.pl!news-out1.kabelfoon.nl!newsfeed.kabelfoon.nl!bandi.nntp.kabelfoon.nl!198.186.194.249.MISMATCH!news-out.readnews.com!transit3.readnews.com!postnews.google.com!j29g2000yqm.googlegroups.com!not-for-mail From: Desper0 <ansic.soft@gmail.com> Newsgroups: pl.comp.lang.python Subject: pobieranie pliku + autoryzacja Date: Wed, 12 Jan 2011 15:18:29 -0800 (PST) Organization: http://groups.google.com Lines: 44 Message-ID: <e62ff482-6c5b-4eef-b0d4-fcccb68a182e@j29g2000yqm.googlegroups.com> NNTP-Posting-Host: 87.207.6.203 Mime-Version: 1.0 X-Trace: posting.google.com 1294874309 6101 127.0.0.1 (12 Jan 2011 23:18:29 GMT) X-Complaints-To: groups-abuse@google.com NNTP-Posting-Date: Wed, 12 Jan 2011 23:18:29 +0000 (UTC) Complaints-To: groups-abuse@google.com Injection-Info: j29g2000yqm.googlegroups.com; posting-host=87.207.6.203; posting-account=dOGb0woAAABYgbo_KkreKbF4CXejzAEs User-Agent: G2/1.0 X-HTTP-UserAgent: Opera/9.80 (Windows NT 5.1; U; en) Presto/2.7.62 Version/11.00,gzip(gfe) Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit