簡體   English   中英

美麗的湯搶下一個元素

[英]Beautiful Soup Grabbing next element

我試圖拉動選舉人選票,以檢查其更新情況。 但困難的是,所有類在每次刷新時都會更改。 我想搜索Trump文本,然后找到下一個元素即計數。

我可以通過搜索字符串Trump找到元素:

import requests
import re
from bs4 import BeautifulSoup
url = "https://www.google.com/webhp?sourceid=chrome-instant&ion=1&espv=2&ie=UTF-8#q=who+is+winning+the+presidential+election&eob=enn/p//1/0///////////"
r = requests.get(url)
soup = BeautifulSoup(r.content)
elm = soup.find(text='Trump')
print elm.text

我找到了Trump元素,並帶有lm = soup.find(text='Trump') ,但是我不知道如何獲取該元素之后的下一個元素。

您當前的代碼正在尋找與該文本完全匹配的節點。 嘗試這個:

soup.body.findAll(text=re.compile('Trump'))
> ["Donald Trump is US president-elect in 'America's Brexit' as Hillary Clinton concedes election - live", 'Donald Trump ', 'Donald Trump wins presidential election, plunging US into uncertain future'... ]

您將改為尋找包含目標文本的正則表達式。 您可以優化要查找的正則表達式,例如:

b.body.findAll(text=re.compile('Trump wins .+? uncertain future'))
> ['Donald Trump wins presidential election, plunging US into uncertain future']

暫無
暫無

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

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