Rocksolid Light

groups  faq  privacy  How to post  login

Message-ID:  

Your mode of life will be changed for the better because of good news soon.


rocksolid / de.comp.lang.python / Re: [Python-de] Re: Webserver auslesen

SubjectAuthor
* Webserver auslesenHeiko Neubauer
`* [Python-de] Re: Webserver auslesenMaurice Kemmann
 `* [Python-de] Re: Webserver auslesenHardy Erlinger
  `- Re: [Python-de] Re: Webserver auslesenHeiko Neubauer

1
Subject: Webserver auslesen
From: Heiko Neubauer
Newsgroups: de.comp.lang.python
Organization: [ posted via ] IN-Ulm
Date: Wed, 13 Mar 2024 21:15 UTC
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.datentrampelpfad.de!thinkmo.de!news.uni-stuttgart.de!newsfeed.in-ulm.de!.POSTED!not-for-mail
From: heiko.ne...@gmx.de (Heiko Neubauer)
Newsgroups: de.comp.lang.python
Subject: Webserver auslesen
Date: Wed, 13 Mar 2024 22:15:53 +0100
Organization: [ posted via ] IN-Ulm
Message-ID: <ust528U32u1iL1@usenet.in-ulm.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.in-ulm.de 45C4A1B5DE4700D492AB5FE831133259
User-Agent: Mozilla Thunderbird
Content-Language: de-DE
View all headers

Hallo zusammen,

ich würde gerne einen Webserver (Heizung)
mit Python auslesen, bis jetzt mit HTTPDigestAuth so:

url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/1'
r = requests.get(url, auth=HTTPDigestAuth('user', 'passwort'), verify=False, stream=True)
inhalt = r.text

Funktioniert.

Nun möchte ich ich aber die weiteren Punkte ohne übergabe der
Benutzerdaten auslesen, quasi so:

url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/2'
r = requests.get(url, verify=False, stream=True)
inhalt = r.text

Wie stelle ich es an, das der Server sich an den vorrigen
Login erinnert?

Heiko

Subject: [Python-de] Re: Webserver auslesen
From: Maurice Kemmann
Newsgroups: de.comp.lang.python
Date: Thu, 14 Mar 2024 06:55 UTC
References: 1
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: maur...@kemmann.de (Maurice Kemmann)
Newsgroups: de.comp.lang.python
Subject: [Python-de]_Re:_Webserver_auslesen
Date: Thu, 14 Mar 2024 07:55:56 +0100
Lines: 39
Message-ID: <8aaae97d-01b5-4500-a87f-bd8f60767d47@kemmann.de>
References: <ust528U32u1iL1@usenet.in-ulm.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.uni-berlin.de lBOcNVWDkeaeQ+rbwSE4QQ70wthZwhWgaGGG6l6mu1Pg==
Cancel-Lock: sha1:ES57BwRjfnW4cmXe2hp5aKU5nlg= sha256:P3xyDDJ8Z8Syq7szvD/47MH2yKFBlxGYT/usuT9jVPk=
Authentication-Results: mail.python.org; dkim=pass
reason="2048-bit key; unprotected key"
header.d=kemmann.de header.i=@kemmann.de header.b=FxR8SeaF;
dkim-adsp=pass; dkim-atps=neutral
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kemmann.de; s=mail;
t=1710399433; bh=nr7d2fguuBULPyio1zND/EhGs4QBdlw3GrJWADCFutE=;
h=Date:Subject:To:References:From:In-Reply-To:From;
b=FxR8SeaFrra1AuBasuBCu6YIY+Ohgndgmra3h9juVlieImhMaTeAkIupvhWcpAXzy
zYiflVgCGNOTnf5sW6vuQjDS2We4UNXAbj9NUa6Qlxa4N9c0iy6V0GLQKbOAwOh8cW
yCPoC74RlGss95oB2KTa7bRh0xkwGK87P4SL4LSh/UDtQuZvaI/GMtKPHBKrRIyMMF
LHv0N99Kc4H2zQfQ0iyS2rqlkESyPiZ6RUZnme7zyzS6SbRjxqOAZooVIaYU9KzIhH
Ea6UZH7/TfdTeDk6nyKp+CKRGd1hTFRAzPRpWRlVnwFLaQRL65xjFILYDCPRfOiEWB
E7bs+jLTs871g==
Content-Language: de-DE
In-Reply-To: <ust528U32u1iL1@usenet.in-ulm.de>
Message-ID-Hash: ZQESALJXNK5KHGBFPK262LW2JCQXM427
X-Message-ID-Hash: ZQESALJXNK5KHGBFPK262LW2JCQXM427
X-MailFrom: maurice@kemmann.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-python-de.python.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.10b1
Precedence: list
List-Id: Die Deutsche Python Mailingliste <python-de.python.org>
Archived-At: <https://mail.python.org/archives/list/python-de@python.org/message/ZQESALJXNK5KHGBFPK262LW2JCQXM427/>
List-Archive: <https://mail.python.org/archives/list/python-de@python.org/>
List-Help: <mailto:python-de-request@python.org?subject=help>
List-Owner: <mailto:python-de-owner@python.org>
List-Post: <mailto:python-de@python.org>
List-Subscribe: <mailto:python-de-join@python.org>
List-Unsubscribe: <mailto:python-de-leave@python.org>
View all headers

Guten Morgen,

Am 13.03.24 um 22:15 schrieb Heiko Neubauer über python-de:
> Hallo zusammen,
>
> ich würde gerne einen Webserver (Heizung)
> mit Python auslesen, bis jetzt mit HTTPDigestAuth so:
>
>     url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/1'
>     r = requests.get(url, auth=HTTPDigestAuth('user', 'passwort'),
> verify=False,  stream=True)
>     inhalt = r.text
> Funktioniert.
>
> Nun möchte ich ich aber die weiteren Punkte ohne übergabe der
> Benutzerdaten auslesen, quasi so:
>
>     url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/2'
>     r = requests.get(url, verify=False,  stream=True)
>     inhalt = r.text
>
> Wie stelle ich es an, das der Server sich an den vorrigen
> Login erinnert?

meistens wird doch mit einem Cookie gearbeitet. In der requests Lib gibt
es das Keksglas (cookiejar). Hier ist ggf. ein Beispiel.
https://scrapfly.io/blog/save-and-load-cookies-in-requests-python/

Hope it helps,

Maurice

--
Maurice Kemmann
+49 175 721 7020
maurice@kemmann.de
Messenger: Signal
Social Media: LinkedIn & Xing

Subject: [Python-de] Re: Webserver auslesen
From: Hardy Erlinger
Newsgroups: de.comp.lang.python
Date: Fri, 15 Mar 2024 09:02 UTC
References: 1 2
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!not-for-mail
From: hardy.er...@posteo.de (Hardy Erlinger)
Newsgroups: de.comp.lang.python
Subject: [Python-de]_Re:_Webserver_auslesen
Date: Fri, 15 Mar 2024 09:02:32 +0000
Lines: 40
Message-ID: <9920c910ae3b61290e5c3170cb04d18f@posteo.de>
References: <ust528U32u1iL1@usenet.in-ulm.de>
<8aaae97d-01b5-4500-a87f-bd8f60767d47@kemmann.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8;
format=flowed
Content-Transfer-Encoding: quoted-printable
X-Trace: news.uni-berlin.de +yWxpPwAOajgxZ1u2yha7AYqZ9FACYSy3ipNzSMO92Pw==
Cancel-Lock: sha1:++ARw5rN7G1xcn4oxOvtkBOugt8= sha256:EeB1W6AkTRKJCUaQmGBl6SDGkjFeBrV2PYCdCuncCJ4=
Authentication-Results: mail.python.org; dkim=pass
reason="2048-bit key; unprotected key"
header.d=posteo.de header.i=@posteo.de header.b=o4vYBstO;
dkim-adsp=pass; dkim-atps=neutral
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=posteo.de; s=2017;
t=1710493353; bh=FIGt+uXqIrD+irEQpFGpX1LwkXKfMPaBYKFPTffyRdc=;
h=MIME-Version:Content-Type:Content-Transfer-Encoding:Date:From:To:
Subject:Message-ID:From;
b=o4vYBstOanxNTLVAWjDj3KcpSsstK9QmAHhAPBairhR3soCLQ4RKWOnwTA0IYVHTV
qXQ/NLbTc2wG+LtdileCdFFs0/VfCOwEviQmFluWtaDIFDgZjHZi9PZuSwtSFAtrk7
anKzWLWlRPgwgqiLsm48zdsK0YIW+Atsow6agqZQMxoamFC6Oyf3EzrjgbBhNVxtYE
P4kAG9H5h1bojTtsktkW1pPkxsLICFVLVLpoJoOwmdlHR6iIA72Ne5xtwh3SHmMFdL
xcemZHO6/+m8gxtDrMoBO/xIZVYZcWrYFy0H5zo49K/C+Uu5Dx5PfYLYi/edxATCnx
4A+fdPq7WUJXw==
In-Reply-To: <8aaae97d-01b5-4500-a87f-bd8f60767d47@kemmann.de>
Message-ID-Hash: 2IGEHGFVQYQFUCAB6CBELXXXLDXOP4EC
X-Message-ID-Hash: 2IGEHGFVQYQFUCAB6CBELXXXLDXOP4EC
X-MailFrom: hardy.erlinger@posteo.de
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-python-de.python.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
X-Mailman-Version: 3.3.10b1
Precedence: list
List-Id: Die Deutsche Python Mailingliste <python-de.python.org>
Archived-At: <https://mail.python.org/archives/list/python-de@python.org/message/2IGEHGFVQYQFUCAB6CBELXXXLDXOP4EC/>
List-Archive: <https://mail.python.org/archives/list/python-de@python.org/>
List-Help: <mailto:python-de-request@python.org?subject=help>
List-Owner: <mailto:python-de-owner@python.org>
List-Post: <mailto:python-de@python.org>
List-Subscribe: <mailto:python-de-join@python.org>
List-Unsubscribe: <mailto:python-de-leave@python.org>
View all headers

>> ich würde gerne einen Webserver (Heizung)
>> mit Python auslesen, bis jetzt mit HTTPDigestAuth so:
>>
>>     url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/1'
>>     r = requests.get(url, auth=HTTPDigestAuth('user', 'passwort'),
>> verify=False,  stream=True)
>>     inhalt = r.text
>> Funktioniert.
>>
>> Nun möchte ich ich aber die weiteren Punkte ohne übergabe der
>> Benutzerdaten auslesen, quasi so:
>>
>>     url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/2'
>>     r = requests.get(url, verify=False,  stream=True)
>>     inhalt = r.text
>>
>> Wie stelle ich es an, das der Server sich an den vorrigen
>> Login erinnert?

Am einfachsten geht das über das "Session" Objekt, siehe
https://docs.python-requests.org/en/latest/user/advanced/#session-objects

Ungefähr so:

url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/1'
with requests.Session() as sess:
sess.auth = ...
r = sess.get(url)

Die Methoden .get()/.post() usw. werden also nicht am Request-Objekt,
sondern am Session-Objekt aufgerufen. Requests kümmert sich im
Hintergrund um das Speichern der Auth-Cookies.

Freundliche Grüße,

Hardy

Subject: Re: [Python-de] Re: Webserver auslesen
From: Heiko Neubauer
Newsgroups: de.comp.lang.python
Organization: [ posted via ] IN-Ulm
Date: Fri, 15 Mar 2024 11:43 UTC
References: 1 2 3
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!news.bawue.net!newsfeed.in-ulm.de!.POSTED!not-for-mail
From: heiko.ne...@gmx.de (Heiko Neubauer)
Newsgroups: de.comp.lang.python
Subject: Re: [Python-de] Re: Webserver auslesen
Date: Fri, 15 Mar 2024 12:43:36 +0100
Organization: [ posted via ] IN-Ulm
Message-ID: <ut1c98U3bcifL1@usenet.in-ulm.de>
References: <ust528U32u1iL1@usenet.in-ulm.de>
<8aaae97d-01b5-4500-a87f-bd8f60767d47@kemmann.de>
<9920c910ae3b61290e5c3170cb04d18f@posteo.de>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.in-ulm.de 9778740C5A2F287231C941C887A523DB
User-Agent: Mozilla Thunderbird
Content-Language: de-DE
In-Reply-To: <9920c910ae3b61290e5c3170cb04d18f@posteo.de>
View all headers

Am 15.03.2024 um 10:02 schrieb Hardy Erlinger:
>
> Am einfachsten geht das über das "Session" Objekt, siehe
> https://docs.python-requests.org/en/latest/user/advanced/#session-objects
>
> Ungefähr so:
>
> url='http://xxx.xxx.xxx.xxx/api/1.0/datapoint/1'
> with requests.Session() as sess:
> sess.auth = ...
> r = sess.get(url)
>
> Die Methoden .get()/.post() usw. werden also nicht am Request-Objekt,
> sondern am Session-Objekt aufgerufen. Requests kümmert sich im
> Hintergrund um das Speichern der Auth-Cookies.

Ich mag einfache Lösungen, nur, ist es einfach genug für mich.

Ich werde das versuchen und wieder melden.

Heiko


rocksolid / de.comp.lang.python / Re: [Python-de] Re: Webserver auslesen

1
server_pubkey.txt

rocksolid light 0.9.12
clearnet tor