I would like to get all the <script>
tags in a document and then process each one based on the presence (or absence) of certain attributes.
E.g., for each <script>
tag, if the attribute for
is present do something; else if the attribute bar
is present do something else.
Here is what I am doing currently:
outputDoc = BeautifulSoup(''.join(output))
scriptTags = outputDoc.findAll('script', attrs = {'for' : True})
But this way I filter all the <script>
tags with the for
attribute... but I lost the other ones (those without the for
attribute).
If i understand well, you just want all the script tags, and then check for some attributes in them?
scriptTags = outputDoc.findAll('script')
for script in scriptTags:
if script.has_attr('some_attribute'):
do_something()