簡體   English   中英

從 BeautifulSoup 中的錨標記中提取文本

[英]Extract text from anchor tag in BeautifulSoup

我正在嘗試從 URL 中提取標題,但它沒有類。 以下代碼取自頁面源代碼。

<a href="/f/oDhilr3O">Unatama Don</a>

標題實際上確實有一個類,但您可以看到我使用了索引 3,因為前 3 個標題不是我想要的。 但是,我不想使用硬編碼。 但在網站中,標題也是一個鏈接,因此是上面的鏈接。

title_name=soup.find_all('div',class_='food-description-title')
title_list=[]

for i in range (3,len(title_name)):
    title=title_name[i].text
    title_list.append(title)

"Unatama Don"是我想要獲得的稱號。

以下是在 BS 中搜索具有特定 URL 的錨元素的示例:

from bs4 import BeautifulSoup

document = '''
  <a href="https://www.google.com">google</a>
  <a href="/f/oDhilr3O">Unatama Don</a>
  <a href="test">Don</a>
'''

soup = BeautifulSoup(document, "lxml")
url = "/f/oDhilr3O"

for x in soup.find_all("a", {"href" : url}):
    print(x.text)

輸出:

Unatama Don

requests 和 bs4 模塊對於此類任務非常有幫助。 你有沒有試過像下面這樣的?

import requests
from bs4 import BeautifulSoup

url = ('PASTE/YOUR/URL/HERE')
response = requests.get(url)
page = response.text
soup = BeautifulSoup(page, 'html.parser')
links = soup.find_all('a', href=True)

for each in links:
    print(each.text)

我認為這具有您正在尋找的理想結果。 如果您也想要超鏈接。 添加另一個循環並在循環中添加“print(each.get('href'))”。 讓我們知道怎么回事。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM