BeautifulSoup optgroup in Dictionary
Verfasst: Dienstag 19. Februar 2019, 18:43
Hey Freunde,
ich spiele gerade ein wenig mit BeautifulSoup rum und hänge grad an folgender Stelle.
Ich bin bisher so weit, dass ich eine Liste aus folgenden Elemente habe. (Liste ist untereinander ausgegeben)
Nun würde ich gerne ein Dictionary für jede Position erstellen. Sozusagen als Überbegriff Torwart (Key) und die jeweiligen Spieler als (Value).
Da sich die Anzahl der Spieler, also der Zeilen hier pro Mannschaft verändert, kann ich nicht sagen, Index von 1-4 ist immer Torwart etc.
Jetzt hänge ich hier schon ewig dran und versuche irgendwie eine IF-Funktion zusammenzubasteln, um sozusagen immer von "optgroup" bis "optgroup" zu nehmen und alles dazwischen
in eine neue Liste zu packen. Aber irgendwie krieg ich es nicht hin.
Hat wer von euch eventuell einen Tipp für mich oder eine Hilfestellung? Vielen Dank !
Liebe Grüße
N
<optgroup label="Torwart">
<option value="17259">(1) Manuel Neuer</option>
<option value="40680">(26) Sven Ulreich</option>
<option value="336307">(36) Christian Früchtl</option>
<option value="317444">(39) Ron-Thorben Hoffmann</option>
</optgroup>
<optgroup label="Abwehr">
<option value="161056">(32) Joshua Kimmich</option>
<option value="59016">(27) David Alaba</option>
<option value="166601">(4) Niklas Süle</option>
<option value="39728">(5) Mats Hummels</option>
<option value="26485">(17) Jérôme Boateng</option>
<option value="33947">(13) Rafinha</option>
</optgroup>
<optgroup label="Mittelfeld">
<option value="88103">(11) James Rodríguez</option>
<option value="60444">(6) Thiago</option>
<option value="190393">(24) Corentin Tolisso</option>
<option value="153084">(18) Leon Goretzka</option>
<option value="44017">(8) Javi Martínez</option>
<option value="258027">(35) Renato Sanches</option>
<option value="379980">(37) Meritan Shabani</option>
</optgroup>
<optgroup label="Sturm">
<option value="38253">(9) Robert Lewandowski</option>
<option value="243714">(29) Kingsley Coman</option>
<option value="58358">(25) Thomas Müller</option>
<option value="159471">(22) Serge Gnabry</option>
<option value="424204">(19) Alphonso Davies</option>
<option value="4360">(10) Arjen Robben</option>
<option value="22068">(7) Franck Ribéry</option>
<option value="297583">(20) Woo-yeong Jeong</option>
</optgroup>
ich spiele gerade ein wenig mit BeautifulSoup rum und hänge grad an folgender Stelle.
Ich bin bisher so weit, dass ich eine Liste aus folgenden Elemente habe. (Liste ist untereinander ausgegeben)
Nun würde ich gerne ein Dictionary für jede Position erstellen. Sozusagen als Überbegriff Torwart (Key) und die jeweiligen Spieler als (Value).
Da sich die Anzahl der Spieler, also der Zeilen hier pro Mannschaft verändert, kann ich nicht sagen, Index von 1-4 ist immer Torwart etc.
Jetzt hänge ich hier schon ewig dran und versuche irgendwie eine IF-Funktion zusammenzubasteln, um sozusagen immer von "optgroup" bis "optgroup" zu nehmen und alles dazwischen
in eine neue Liste zu packen. Aber irgendwie krieg ich es nicht hin.
Hat wer von euch eventuell einen Tipp für mich oder eine Hilfestellung? Vielen Dank !
Liebe Grüße
N
<optgroup label="Torwart">
<option value="17259">(1) Manuel Neuer</option>
<option value="40680">(26) Sven Ulreich</option>
<option value="336307">(36) Christian Früchtl</option>
<option value="317444">(39) Ron-Thorben Hoffmann</option>
</optgroup>
<optgroup label="Abwehr">
<option value="161056">(32) Joshua Kimmich</option>
<option value="59016">(27) David Alaba</option>
<option value="166601">(4) Niklas Süle</option>
<option value="39728">(5) Mats Hummels</option>
<option value="26485">(17) Jérôme Boateng</option>
<option value="33947">(13) Rafinha</option>
</optgroup>
<optgroup label="Mittelfeld">
<option value="88103">(11) James Rodríguez</option>
<option value="60444">(6) Thiago</option>
<option value="190393">(24) Corentin Tolisso</option>
<option value="153084">(18) Leon Goretzka</option>
<option value="44017">(8) Javi Martínez</option>
<option value="258027">(35) Renato Sanches</option>
<option value="379980">(37) Meritan Shabani</option>
</optgroup>
<optgroup label="Sturm">
<option value="38253">(9) Robert Lewandowski</option>
<option value="243714">(29) Kingsley Coman</option>
<option value="58358">(25) Thomas Müller</option>
<option value="159471">(22) Serge Gnabry</option>
<option value="424204">(19) Alphonso Davies</option>
<option value="4360">(10) Arjen Robben</option>
<option value="22068">(7) Franck Ribéry</option>
<option value="297583">(20) Woo-yeong Jeong</option>
</optgroup>