Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.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 Beauty soup 4:使用select获取指定的href_Python_Html_Beautifulsoup - Fatal编程技术网

Python Beauty soup 4:使用select获取指定的href

Python Beauty soup 4:使用select获取指定的href,python,html,beautifulsoup,Python,Html,Beautifulsoup,我不熟悉HTML和Python 我有以下html片段: <li data-selenium="aaa" data-isready="true" data-hotelid="1234" data-roomid="12345" class="bbb"> <a id="xxx" data-selenium="" class="yyy" target="_blank" href="/someURL/I_want_to_get"> </a> </li> 如

我不熟悉HTML和Python

我有以下html片段:

<li data-selenium="aaa" data-isready="true" data-hotelid="1234" data-roomid="12345" class="bbb">
<a id="xxx" data-selenium="" class="yyy" target="_blank" href="/someURL/I_want_to_get">
</a>
</li>
如果标记a仅包含属性href, 但是如果像上面这样的标签,我会收到错误消息

IndexError: list index out of range
然后我尝试删除该[0]并发生其他错误

TypeError: list indices must be integers.
我尝试了许多不同的选择方法,但我无法得到它

我想使用Select而不是findAll


有什么方法可以让它工作吗?

选择
命令正在返回一个列表。如果列表为空,表示未找到任何内容,则无法访问列表的第一项。

选择
命令将返回列表。如果列表为空,表示未找到任何内容,则您无法访问列表的第一项。

您应该检查的第一件事是您在问题中提供的HTML代码是否是数据文件中的实际HTML代码。该HTML显然不正确,因为属性在标记之外。@Mikk抱歉,这是我的疏忽,我已经更新了该HTML。
select
命令正在返回一个列表。如果列表为空,表示未找到任何内容,则您无法访问列表的第一项。@double_j谢谢您的回答。我检查的是select命令之前存在的代码,它现在似乎工作了。您应该检查的第一件事是您在问题中提供的HTML代码是否是数据文件中的实际代码。该HTML显然不正确,因为属性在标记之外。@Mikk抱歉,这是我的疏忽,我已经更新了该HTML。
select
命令正在返回一个列表。如果列表为空,表示未找到任何内容,则您无法访问列表的第一项。@double_j谢谢您的回答。我检查是不是在select命令之前存在,现在似乎可以工作了。
TypeError: list indices must be integers.