如何将HTML中的列提取到列表中?

时间:2018-11-04 18:46:13

标签: python html regex beautifulsoup

我需要从HTML文档中提取国家/地区名称列表,但是我将获得整行HTML代码,而不仅仅是在list中需要的名称。

下面是我编写的可以完成此任务的函数,但是我没有得到所需的列表:

country_list = []
soup = BeautifulSoup(open(html), 'lxml')

for idx in soup.find_all('a', class_="metaLink"):
#   re.sub('<.*?>', '', soup)
    country_list.append(idx)
return country_list

变量(html)是一个外部html文件,我应该返回一个国家名列表。相反,我要返回的列表中的项目采用这种格式。

<a class="metaLink" href="javascript:void(0)" 
   onclick="loadMetaData('AFG', 'C' ,'Country', 'Afghanistan')">Afghanistan</a>

列表中以这种方式显示了数百个项目,但我只需要国家名称,在这种情况下,'Afghanistan'是我唯一需要的单词。

如何删除HTML代码的其余文本?我尝试使用已注释掉的正则表达式,但是我不相信我在正确的位置使用它。

0 个答案:

没有答案