Vikipedi'de birkaç ülkenin bağımsızlık tarihini yakalamak için bir senaryo yazdım. Kazakistan ile ÖrneğinPython & Beautiful Çorbası: Sadece belirli bir sınıfta arama
:
URL_QS = 'https://en.wikipedia.org/wiki/Kazakhstan'
r = requests.get(URL_QS)
soup = BeautifulSoup(r.text, 'lxml')
# Only keep the infobox (top right)
infobox = soup.find("table", class_="infobox geography vcard")
if infobox:
formation = infobox.find_next(text = re.compile("Formation"))
if formation:
independence = formation.find_next(text = re.compile("independence"))
if independence:
independ_date = independence.find_next("td").text
else:
independence = formation.find_next(text = re.compile("Independence"))
if independence:
independ_date = independence.find_next("td").text
print(independ_date)
Ve şu çıktıyı var:
Almaty
Bu çıkış metninde, infobox'unda ama sonra lokalize değildir. "formation.find_next (text = re.compile (" independence "))", bilgi kutusunun dışında bir şey bulduğundan dolayı, neden araştırmanın yalnızca bilgi kutusunda yapılmaması gerektiğini anlamıyorum. Bu alanda nasıl arama yapabilirim?
Yardımlarınız için şimdiden teşekkür ederiz!
oluşumu = infobox.find_next (text = re.compile ("Formasyon")) Bu çizgiyi teyit edebilir . – kmcodes