Slicing URL mit Python

8

Ich arbeite mit einer riesigen Liste von URLs. Nur eine kurze Frage Ich habe versucht, einen Teil der URL herauszuschneiden, siehe unten:

%Vor%

Wie könnte ich herausschneiden:

%Vor%

Manchmal gibt es mehr als zwei Parameter nach der CONTENT_ITEM_ID und die ID ist jedes Mal anders, ich denke, dass es getan werden kann, indem man den ersten & amp; und dann schneiden Sie die Zeichen vor dem & amp; ab, nicht ganz sicher, wie man das tho tut.

Prost

    
RailsSon 03.11.2008, 14:22
quelle

10 Antworten

14

Verwenden Sie das Modul urlparse . Überprüfen Sie diese Funktion:

%Vor%

In Ihrem Beispiel:

%Vor%

Diese Funktion hat den zusätzlichen Vorteil, dass es einfacher zu verwenden ist, wenn Sie entscheiden, dass Sie auch einige weitere Abfrageparameter wünschen oder wenn die Reihenfolge der Parameter nicht fest ist, wie in:

%Vor%     
tzot 03.11.2008, 16:25
quelle
4

Die schnelle und schmutzige Lösung ist dies:

%Vor%     
Rafał Dowgird 03.11.2008 14:34
quelle
3

Eine andere Option wäre die Verwendung der Split-Funktion, wobei & amp; als ein Parameter. Auf diese Weise würden Sie sowohl die Basis-URL als auch beide Parameter extrahieren.

%Vor%

gibt eine Liste mit

zurück %Vor%     
Kena 03.11.2008 14:36
quelle
1

Ich habe herausgefunden, was ich tun muss:

%Vor%     
RailsSon 03.11.2008 14:33
quelle
1

Parsin URL ist nie so einfach, wie es scheint, deshalb gibt es die Module urlparse und urllib.

E.G:

%Vor%

Dies ist immer noch nicht 100% zuverlässig, aber viel mehr als das Teilen selbst, weil es viele gültige URL-Formate gibt, die Sie und ich nicht kennen und eines Tages in Fehlerprotokollen entdecken.

    
e-satis 03.11.2008 15:52
quelle
0
%Vor%     
Corey Goldberg 03.11.2008 14:34
quelle
0

Sehen Sie sich die URL-Datei2 -Frage für eine Diskussion zu diesem Thema an.

Siehe auch die Frage Python-Suchfrage ".

    
S.Lott 03.11.2008 14:41
quelle
0

Diese Methode ist nicht abhängig von der Position des Parameters innerhalb der URL-Zeichenfolge. Dies könnte, ich bin mir sicher, verfeinert werden, aber es bringt den Punkt über.

%Vor%     
Jeremy Cantrell 03.11.2008 15:31
quelle
0

Eine uralte Frage, aber dennoch möchte ich anmerken, dass Abfrageparameter auch durch ';' getrennt sein können. nicht nur '& amp;'.

    
Alien Life Form 24.02.2010 14:43
quelle
0

neben URLParse gibt es auch furl , was IMHO bessere API hat.

    
neutrinus 20.07.2012 09:39
quelle

Tags und Links