Python 试图用美味的汤从维基百科上获取郊区的名字

Python 试图用美味的汤从维基百科上获取郊区的名字,python,beautifulsoup,Python,Beautifulsoup,我只是从美味的汤开始,并试图从维基百科中提取墨尔本的郊区 郊区的名字都是链接文本,这意味着我必须从a href标签中抓取它们,我不知道该怎么做 以下是我尝试过的: suburb_names = soup_suburb_list.find_all('a', href=True) 但这只是返回页面上的所有href标记,我不知道如何区分href,所以scraper只获取用户的名称 如果您有任何见解,我将不胜感激。这应该适合您。如果你有任何问题,请告诉我 从bs4导入BeautifulSoup 导入请

我只是从美味的汤开始,并试图从维基百科中提取墨尔本的郊区

郊区的名字都是链接文本,这意味着我必须从a href标签中抓取它们,我不知道该怎么做

以下是我尝试过的:

suburb_names = soup_suburb_list.find_all('a', href=True)
但这只是返回页面上的所有href标记,我不知道如何区分href,所以scraper只获取用户的名称


如果您有任何见解,我将不胜感激。

这应该适合您。如果你有任何问题,请告诉我

从bs4导入BeautifulSoup 导入请求 wikipedia=requests.get'https://en.wikipedia.org/wiki/List_of_Melbourne_suburbs' soup=BeautifulSoupwikipedia.content,“html.parser” 容器=soup.select.mw-parser-output>ul .mw解析器输出是包含主 页面内容。这将选择输出为.mw解析器的元素 他们的父母 郊区=[] 对于郊区中的容器\u容器:遍历郊区组 郊区列表=容器。查找所有“a”查找组中的所有锚 对于郊区列表中的郊区:遍历这些郊区 Subpures.appendSubpures.text将郊区的名称追加到 郊区主要名单 印刷郊区 代码说明:

查看Wikipedia页面,似乎一个带有class.mw解析器输出的div包含页面的中间部分,没有侧边栏

这已经消除了大多数无用的锚,并且由于郊区的名称位于作为.mw解析器输出的直接子元素的元素中,因此只选择那些ul元素

请注意,还有其他ul元素不是直接的子元素,并且不只是包含郊区名称,就像在页面摘要中一样,因此使用soup.find_all'ul'在这里不起作用


在找到ul元素后,只需搜索其中的锚,您就有了您的列表。

非常感谢。问题:我如何知道将来使用.mw parser output>ul。这似乎已经从网页中删除了所有无关的内容,只捕获了我想要的内容,这很好,但我不明白怎么做!我希望这是清楚的。如果你还需要我详细说明什么,请告诉我。