Advertisements
I’m currently scraping elements from a webpage. Let’s say i’m iterating over a html reponse and a part of that response looks like this:
<div class="col-sm-12 col-md-5">
<div class="material">
<div class="material-parts">
<span class="material-part" title="SLT-4 2435">
<img src="/images/train-material/mat_slt4.png"/> </span>
<span class="material-part" title="SLT-6 2631">
<img src="/images/train-material/mat_slt6.png"/> </span>
</div>
</div>
</div>
I know I can access the first element under title
within the span
class like so:
row[-1].find('span')['title']
"SLT-4 2435
But I would like to select the second title
under the span
class (if it exists) as a string too, like so: "SLT-4 2435, SLT-6 2631"
Any ideas?
>Solution :
You can use the find_all()
function to find all the span
elements with class material-part
titles = []
for material_part in row[-1].find_all('span', class_='material-part'):
titles.append(material_part['title'])
result = ', '.join(titles)