gpt4 book ai didi

python - BeautifulSoup 中的 navigablestrings 和 unicode 问题

转载 作者:太空宇宙 更新时间:2023-11-03 19:17:15 25 4
gpt4 key购买 nike

我在 BeautifulSoup (python) 中遇到一些 navigablestrings 和 unicode 问题。

基本上,我正在解析来自 youtube 的四个结果页面,并将顶部结果的扩展名(youtube.com/watch?= 之后的网址末尾)放入列表中。

然后,我在另外两个函数中循环该列表,其中一个函数会抛出此错误:TypeError: 'NavigableString' object is not callable。然而,另一个说TypeError: 'unicode' object is not callable。两者都使用完全相同的字符串。

我在这里做错了什么?我知道我的解析代码可能并不完美,我同时使用 BeautifulSoup 和正则表达式。过去,每当我遇到 NavigableString 错误时,我都会输入“.encode('ascii', 'ignore') 或简单的 str(),这似乎有效。任何帮助将不胜感激!

    for url in urls:
response = urllib2.urlopen(url)
html = response.read()
soup = BeautifulSoup(html)
link_data = soup.findAll("a", {"class":"yt-uix-tile-link result-item-translation-title"})[0]
ext = re.findall('href="/(.*)">', str(link_data))[0]
if isinstance(ext, str):
exts.append('http://www.youtube.com/'+ext.replace(' ',''))

然后:

    for ext in exts:
description = description(ext)
embed = embed(ext)

我只添加了 isinstance() 行来尝试看看问题是什么。当“str”更改为“unicode”时,exts 列表为空(意味着它们是字符串,而不是 unicode(甚至是 navigablestrings?))。我很困惑...

最佳答案

description = description(ext) 在循环中第一次迭代后用字符串替换函数。与嵌入相同。

关于python - BeautifulSoup 中的 navigablestrings 和 unicode 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10966429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com