1

Je veux rogner tous les espaces blancs et nouvelle ligne et tournez le résultat deSuppression de nouvelles lignes entre les balises HTML dans python3

<title> 

    Asian Case Research Journal (World Scientific) 

</title> 

à cette

<title>Asian Case Research Journal (World Scientific)</title> 

Mon code:

for link in url_list: 
    try: 
    r = requests.get(link) 
    soup = BeautifulSoup(r.content,"html.parser") 
    print(soup.title) 
except: 
    print("No Title Found ") 
    continue 

Répondre

1
import bs4 

html = '''<title> 

    Asian Case Research Journal (World Scientific) 

</title>''' 
soup = bs4.BeautifulSoup(html, 'lxml') 
title = soup.title 
title.string = title.get_text(strip=True) 
print(str(title)) 

sur:

<title>Asian Case Research Journal (World Scientific)</title> 

En BS4, étiquette est un objet qui a attribut de chaîne, vous pouvez accéder ou modifier avec . notation, et convertir l'objet tag en objet python str en utilisant str(tag)

Document: modifying-string

0

Essayez ceci et modifiez-le pour votre cas d'utilisation.

desired_string = ''.join([x.strip() for x in str(soup.title).split('\r\n')]) 
0

soup.title.text.strip() devrait le faire