在<;中使用bs4查找元素的Python;脚本>;

在<;中使用bs4查找元素的Python;脚本>;,python,html,xml,python-3.x,beautifulsoup,Python,Html,Xml,Python 3.x,Beautifulsoup,我试图使用bs4访问html/xml中的值,但实际上找不到它。这是我想要得到的一个例子: <script> item1 = "a" item2 = "b" </script> 但它不起作用(什么都不会被打印出来)。。。 有人能帮忙吗? 提前非常感谢添加.text并打印每个脚本的内容 from bs4 import BeautifulSoup scripts = ''' <script> item1 = "a" item2 = "b" <

我试图使用bs4访问html/xml中的值,但实际上找不到它。这是我想要得到的一个例子:

<script>
  item1 = "a"
  item2 = "b"
</script>
但它不起作用(什么都不会被打印出来)。。。 有人能帮忙吗?
提前非常感谢

添加
.text
并打印每个
脚本的内容

from bs4 import BeautifulSoup

scripts = '''
<script>
  item1 = "a"
  item2 = "b"
</script>
'''

html = BeautifulSoup(scripts)

for item in html.find_all('script'):
  if 'item1' in item.text:
    print(item.text)
从bs4导入美化组
脚本=“”
项目1=“a”
项目2=“b”
'''
html=美化组(脚本)
对于html.find_all(“脚本”)中的项:
如果item.text中的“item1”:
打印(项目.文本)

添加
.text
并打印每个
脚本的内容

from bs4 import BeautifulSoup

scripts = '''
<script>
  item1 = "a"
  item2 = "b"
</script>
'''

html = BeautifulSoup(scripts)

for item in html.find_all('script'):
  if 'item1' in item.text:
    print(item.text)
从bs4导入美化组
脚本=“”
项目1=“a”
项目2=“b”
'''
html=美化组(脚本)
对于html.find_all(“脚本”)中的项:
如果item.text中的“item1”:
打印(项目.文本)

你能更具体地说明什么是无效的吗?这里什么是
spree
?呃,对不起,我编辑了一个部分,但不是所有的东西。如果我像这样运行
html,什么都不会被打印出来。find_all('script')
将给你一个列表,其中包含文档中所有
标记的内容。我相信BS4会给你一个对象列表,而不是字符串列表——特别是,没有一个会完全等同于字符串
'item1'
。我相信您可以使用
.get_text
方法来查找实际的文本内容,然后根据需要搜索特定的子字符串。请您更具体地说明什么不起作用?这里的
spree
是什么?呃,对不起,我编辑了一个部分,但不是全部。如果我像这样运行
html,则不会打印任何内容。find_all('script')
将为您提供一个包含文档中所有
标记内容的列表。我相信BS4会给你一个对象列表,而不是字符串列表——特别是,没有一个会完全等同于字符串
'item1'
。我相信您可以使用
.get_text
方法来查找实际的文本内容,然后根据需要搜索特定的子字符串。现在我遇到了以下错误:“AttributeError:'NavigableString'对象没有属性'text'”。您确定吗?试试我写的整个剧本吧,是的,我肯定。我从一个请求的响应中得到html,通常这就是问题所在。在问题中插入请求代码,否则没有人能帮你。如果您不想这样做,请将此答案标记为解决方案,因为它符合您的要求。现在我收到了此错误:“AttributeError:'NavigableString'对象没有属性'text'”是否确定?试试我写的整个剧本吧,是的,我肯定。我从一个请求的响应中得到html,通常这就是问题所在。在问题中插入请求代码,否则没有人能帮你。如果您不想这样做,请将此答案标记为解决方案,因为它符合您的要求。