Python 提取<;脚本>;从带有BeautifulSoup的HTML
我正在用BeautifulSoup的Python 提取<;脚本>;从带有BeautifulSoup的HTML,python,html,beautifulsoup,conditional-comments,Python,Html,Beautifulsoup,Conditional Comments,我正在用BeautifulSoup的find\u all功能搜索一个html文件。我有几个问题。首先,因为我只想找到标记,所以我必须使用soup.find_all('script'),因为它不允许我在find_all()中找到。有没有办法绕过这个问题?通过搜索script我得到的HTML文件部分不是脚本标记,而是在URL或段落中使用单词script的部分 第二,当我使用soup.find_all('script')时,有些HTML文件并没有返回所有的脚本标记。在某些文件中,这些是文件的中的,而其
find\u all
功能搜索一个html文件。我有几个问题。首先,因为我只想找到
标记,所以我必须使用soup.find_all('script')
,因为它不允许我在find_all()
中找到
。有没有办法绕过这个问题?通过搜索script
我得到的HTML文件部分不是脚本标记,而是在URL或段落中使用单词script的部分
第二,当我使用soup.find_all('script')
时,有些HTML文件并没有返回所有的脚本标记。在某些文件中,这些是文件的
中的
,而其他文件中,页面参数在脚本中处理。有没有办法绕过这个问题并强制返回所有脚本标记
例如,其中一个被忽略的
如下所示:
<!--[if lte IE 7]>
<script src="//www.webiste.com" type="text/javascript" ></script>
<![endif]-->
我试图从HTML文件中抓取每个
…
部分。这是我发现的最简单的方法,但如果有人知道一种更简单的方法也可以解决我的其他问题,我愿意更改代码。你昨天发布了一个类似的问题:如果没有任何答案对你有帮助,你应该对其进行评论,在SO中,建议不要就类似问题问两个问题,并且不接受其中一个问题的任何答案。soup.find_all('script')
是正确的。没有返回的脚本标记的例子有哪些?@ViníciusAguiar这是一个详细的说明,是一个与前面的问题相关的新问题。我不是在研究如何在HTML文件中找到某些子字符串,当我使用您和其他人在我的最后一个问题上回答的建议时,我遇到了问题。在我的上一个问题中,我不知道find_all
,这是一个我需要帮助查找的函数。在这个问题上,我清楚地说我使用了它,但它有错误。@jesssmith那就好了!对不起,我指的是具体的例子,比如一个例子。请将其中一个不起作用的页面的源代码,精简为一个最小的测试用例,并将其与代码一起编辑到您的问题中。
from bs4 import BeautifulSoup
soup = BeautifulSoup(open(file), 'html.parser')
tags = soup.find_all('script')