Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 提取<;脚本>;从带有BeautifulSoup的HTML_Python_Html_Beautifulsoup_Conditional Comments - Fatal编程技术网

Python 提取<;脚本>;从带有BeautifulSoup的HTML

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文件并没有返回所有的脚本标记。在某些文件中,这些是文件的中的,而其

我正在用BeautifulSoup的
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')