简体   繁体   English

尝试使用 BeautifulSoup 在 Python 中获取 span 的内容

[英]Trying to get content of span in Python using BeautifulSoup

from bs4 import BeautifulSoup

url = 'C:\\Users\\Zandrio\\Documents\\Python-Selexion\\HTML-localhost\\Selexion.html'

page = open(url)
soup = BeautifulSoup(page.read(), features="lxml")
prettify = soup.prettify
Model = "".join([div.text for div in soup.find_all('div', {'class' : 'title-options'})])
print(Model)

Output:输出:

PS C:\Users\Zandrio> & C:/Users/Zandrio/AppData/Local/Programs/Python/Python38/python.exe c:/Users/Zandrio/Documents/Requests/selexion.py

                                        SQQE55Q90R

                    Merk:
                    Samsung                  Afdrukken

HTML: HTML:

<div class="title-options">
<span>
 SQQE55Q90R
</span>
<span>
  Merk: Samsung                
</span>
<span class="print"> <a href="/nl/pr/samsung-qled-qe55q90r/product-sheet" class="product-file-pdf" target="_blank" title="Afdrukken">Afdrukken</a>
</span>
</div>

I just want the Model number in this case, that is SQQE55Q90R here.在这种情况下,我只想要型号,这里是 SQQE55Q90R。 Please suggest any solution.请提出任何解决方案。

from bs4 import BeautifulSoup
url = 'C:\\Users\\Zandrio\\Documents\\Python-Selexion\\HTML-localhost\\Selexion.html'

page = open(url)
soup = BeautifulSoup(page.read(), features="lxml")
div = soup.body.find('div', attrs={'class': 'title-options'})
model_number = div.span.text.strip()  # text of first span

print(model_number)

from bs4 import BeautifulSoup

path = 'C:\\Users\\Zandrio\\Documents\\Python-Selexion\\HTML-localhost\\Selexion.html'

with open(path) as f:
    content = f.read()
soup = BeautifulSoup(content, 'html.parser')

divs = soup.find_all('div', {'class':'title-options'})
for div in divs:
    spans = div.find_all('span')
    sp1, sp2, sp3 = spans
    print(sp1.text.strip())
    print(sp1.text.strip())
    print(sp1.text.strip())

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM