使用 find_all()[] 进行调试

Debugging with find_all()[]

我必须调试我没有写过的代码。我想我在这一行中发现了问题,但我不清楚它的作用。谁能给我解释一下?

 number_of_items_found = int(soup.find_all('li')[3].text.split(' ')[0])

您似乎在使用 BeautifulSoup 来抓取 html 文本。 所以 soup.find_all('li') 部分将从你的 html 中提取每个 <li>..</li> 标签。 然后访问这些标签中的第四个(索引 = 3)并在空格处拆分其文本。

例如:如果 li 包含的文本类似于 12 books in your cart,那么在其上使用 .split(' ') 将为您提供一个列表:['12', 'books', 'in', 'your', 'cart'].

访问列表的第一个元素(索引 = 0)并将其转换为整数后。因此,继续上面的假定文本和列表,结果将是:int('12') -> 12.

希望它有意义。