gpt4 book ai didi

python - soup.find_all 有效但 soup.select 无效

转载 作者:太空宇宙 更新时间:2023-11-03 14:52:23 27 4
gpt4 key购买 nike

我正在尝试使用 css 选择器解析 html 页面

import requests
import webbrowser
from bs4 import BeautifulSoup

page = requests.get('http://www.marketwatch.com', headers={'User-Agent': 'Mozilla/5.0'})
soup = BeautifulSoup(page.content, 'html.parser')

在使用 select 方法时,我无法选择带有类的列表标签。但是,我在使用 find_all 方法时没有遇到任何问题

soup.find_all('ul', class_= "latestNews j-scrollElement")

这会返回我想要的输出,但由于某些原因我不能使用CSS 选择器。我想知道我做错了什么。

这是我的尝试:

soup.select("ul .latestNews j-scrollElement")

返回一个空列表。

我不知道我在使用 select 方法时做错了什么。

谢谢。

最佳答案

来自documentation :

If you want to search for tags that match two or more CSS classes, you should use a CSS selector:

css_soup.select("p.strikeout.body")

在你的情况下,你会这样调用它:

In [1588]: soup.select("ul.latestNews.j-scrollElement")
Out[1588]:
[<ul class="latestNews j-scrollElement" data-track-code="MW_Header_Latest News|MW_Header_Latest News_Facebook|MW_Header_Latest News_Twitter" data-track-query=".latestNews__headline a|a.icon--facebook|a.icon--twitter">
.
.
.

关于python - soup.find_all 有效但 soup.select 无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45000494/

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