AttributeError: 'NavigableString' object has no attribute 'select' - BeautifulSoup

AttributeError: 'NavigableString' object has no attribute 'select' - BeautifulSoup

我正在抓取以下 URL 以获取 countries/states

的列表
main_url enter = "http://www.shangri-la.com/shangrila/sitemap/"

for div in main_page_soup.select("div.main-content-area div.sitemap-4column-container"):

    for city in div.select("div.sitemap-box ul li"):

        for li in city:
            #print(li.find("a"))
            print(li.string)
            #print(li.select("a")["href"][0].text)

我可以通过 print(li.string) 获取国家名称,但我也想获取 a' href 值。

我以前总是这样做 print(li.select("a")["href"][0].text 但不知道这个网站我得到这个错误。

AttributeError: 'NavigableString' object has no attribute 'select'

我想要的 抓取 LIs

中国家/地区的链接

如果你想要 a 标签的 href 属性,迭代 a 标签:

for div in main_page_soup.select("div.main-content-area div.sitemap-4column-container"):
    for city in div.select("div.sitemap-box ul li a"):
        print(city.string, city.get('href'))

里面有li个标签,里面没有a个标签;导致错误。