0
votes

Débarrassez-vous des nombres d'une chaîne en python

Je veux recevoir des noms d'un site Web dans une liste.

soup = bs4.BeautifulSoup(page.text, 'html.parser')
tbl = soup.find('ul', class_='static-top-names part1')
for link in tbl:
    names = link.get_text()

print(names)


0 commentaires

3 Réponses :


1
votes

Si le format est toujours #. Nom , vous pouvez alors procéder comme suit:

nom.split ('.', 1) [1]


0 commentaires

0
votes

Vous pouvez simplement diviser avec '.' personnage de points ou même un espace s'il y a un espace avant le nom.

SO nom.split ('') [- 1] nom.split ('.') [- 1] donnerait simplement le nom. Ensuite, vous pouvez ajouter ces noms dans une liste.

quelque chose comme ça.

noms = [link.get_text (). Split ('') [- 1] pour le lien dans TBL]

Ce sera la liste des noms de juste, j'ai utilisé [- 1] comme indice de liste après que votre texte ne contient que deux éléments après la division avec de l'espace. Donc, s'il y a plus d'articles, veuillez utiliser l'index approprié.


0 commentaires

0
votes

Utilisez une expression régulière pour la cohérence.

new_list = [re.sub('\d+.','',s) for s in original_list]


0 commentaires